undefined index
Ik gebruik in dit simpel testje de methode POST om gegevens te versturen naar een PHP script, maar omdat ik de $_POST[""] variabelen te langdradig vindt wil ik deze verkorten naar een normale variabele. Als ik dat echter probeer krijg ik de melding:
Notice: Undefined index: send in C:\Inetpub\wwwroot\guestbook\index.php on line 25
Notice: Undefined index: bericht in C:\Inetpub\wwwroot\guestbook\index.php on line 26
Dit is de complete code:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<html>
<head>
</head>
<body>
<?PHP
echo "Gastenboek<br \><br \>"
?>
<form action="<?PHP echo $_SERVER['PHP_SELF']; ?>" method="post">
<input type="text" name="bericht" value="<?PHP if(isset($_POST["bericht"]) and $_POST["bericht"] != "") {echo $_POST["bericht"];} ?>">
<input type="submit" name="send" value="send">
</form>
<?PHP
$send = $_POST["send"];
$bericht = $_POST["bericht"];
if(isset($send))
{
if(isset($bericht) and $bericht != "")
{
echo "Bericht verzonden!";
}
else if(isset($bericht) and $bericht == "")
{
echo "Niet alle velden zijn ingevuld!";
}
}
?>
</body>
</html>
<head>
</head>
<body>
<?PHP
echo "Gastenboek<br \><br \>"
?>
<form action="<?PHP echo $_SERVER['PHP_SELF']; ?>" method="post">
<input type="text" name="bericht" value="<?PHP if(isset($_POST["bericht"]) and $_POST["bericht"] != "") {echo $_POST["bericht"];} ?>">
<input type="submit" name="send" value="send">
</form>
<?PHP
$send = $_POST["send"];
$bericht = $_POST["bericht"];
if(isset($send))
{
if(isset($bericht) and $bericht != "")
{
echo "Bericht verzonden!";
}
else if(isset($bericht) and $bericht == "")
{
echo "Niet alle velden zijn ingevuld!";
}
}
?>
</body>
</html>
Gewijzigd op 28/09/2020 17:19:44 door - Ariën -
$send = $_POST["send"];
$bericht = $_POST["bericht"];
Direct in een variable...
Je weet niet eens of ze bestaan.
Code (php)
Dan maakt ie $send en $bericht pas aan als ze ook daadwerkelijk bestaan in de post.
Code (php)
Maar op bovenstaande manier worden $send en $bericht naturllijk niet gezet als de niet voldoen aan de voorwaarden zoals deze in de if is opgenomen....
een andere manier waarbij dat niet optreed:
Dan maakt ie de $send en $bericht aan.
Dat heb ik bewust gedaan omdat hij al een IF heeft in de vorm van:
if(isset($send))
Bedankt heren, opgelost
Notice: Undefined index: poging in C:\\Documents and Settings\\eigenaar\\Bureaublad\\UsbWebserver\\UsbWebserver\\Root\\login.php on line 41
weet iemand wat dit kan zijn want ik weet nog niet zoveel van php
dit is alvast mijn code:
Code (php)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Inloggen</title>
</head>
<body>
<form name="form1" method="post" action="">
<table border="0">
<tr>
<td>Gebruikersnaam:</td>
<td><input name="gebruikersnaam" type="text" id="gebruikersnaam" size="35" value=""></td>
</tr>
<tr>
<td>Wachtwoord:</td>
<td><input name="wachtwoord" type="password" id="wachtwoord" size="35"></td>
</tr>
<tr>
<td>Tijd:</td>
<td><select name="tijd" id="tijd">
<option value="3600" selected>Een uur</option>
<option value="86400">Een dag</option>
<option value="604800">Een week</option>
<option value="2678400">Een maand</option>
<option value="32140800">Een jaar</option>
<option value="32140767859200">Altijd</option>
</select>
(cookies vereist) </td>
</tr>
<tr>
</tr> <td colspan="2"><input name="poging" id="poging" type="hidden" value=""><input type="submit" name="Submit" value="Inloggen"></td>
</table>
</form>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php if(isset($_POST['Submit'])) {
if($_POST['poging'] == $cfg['poging']+1) { // Reeds 3 pogingen achter de rug?
header("Location: wachtwoord.php");
}
$checkg = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'"),0);
$checkp = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."' AND wachtwoord='".md5($_POST['wachtwoord'])."'"),0);
if($_POST['gebruikersnaam'] == "" || $_POST['wachtwoord'] == "") {
$error[] = 'Vul alle velden in!';
}
if($checkg == 0 && $_POST['gebruikersnaam'] != "") {
$error[] = 'De ingevoerde gebruikersnaam is niet geregistreerd.';
}
if($_POST['wachtwoord'] != "" && $_POST['gebruikersnaam'] != "" && $checkp == 0) {
$error[] = 'Het ingevoerde wachtwoord is niet correct.';
}
$fouten = sizeof($error); // aantal errors tellen
if($fouten != 0) { // Er is minstens 1 error
echo 'Kan niet inloggen omwille van de volgende reden(en):';
echo '<ul>';
for($i = 0; $i < $fouten; $i++) {
echo '<li>'.$error[$i].'</li>';
}
echo '</ul>';
echo 'Poging '.$_POST['poging'].' van '.$cfg['poging'];
} else {
session_start();
$res = mysql_query("SELECT * FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'");
$row = mysql_fetch_assoc($res);
setcookie("gebruikersnaam",$row['gebruikersnaam'],time()+$_POST['tijd'],"/");
setcookie("wachtwoord",$row['wachtwoord'],time()+$_POST['tijd'],"/");
$_SESSION['gebruiker'] = $row['gebruikersnaam'];
$_SESSION['gid'] = $row['id'];
header("Location: ingelogged.php");
}
} ?>
if($_POST['poging'] == $cfg['poging']+1) { // Reeds 3 pogingen achter de rug?
header("Location: wachtwoord.php");
}
$checkg = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'"),0);
$checkp = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."' AND wachtwoord='".md5($_POST['wachtwoord'])."'"),0);
if($_POST['gebruikersnaam'] == "" || $_POST['wachtwoord'] == "") {
$error[] = 'Vul alle velden in!';
}
if($checkg == 0 && $_POST['gebruikersnaam'] != "") {
$error[] = 'De ingevoerde gebruikersnaam is niet geregistreerd.';
}
if($_POST['wachtwoord'] != "" && $_POST['gebruikersnaam'] != "" && $checkp == 0) {
$error[] = 'Het ingevoerde wachtwoord is niet correct.';
}
$fouten = sizeof($error); // aantal errors tellen
if($fouten != 0) { // Er is minstens 1 error
echo 'Kan niet inloggen omwille van de volgende reden(en):';
echo '<ul>';
for($i = 0; $i < $fouten; $i++) {
echo '<li>'.$error[$i].'</li>';
}
echo '</ul>';
echo 'Poging '.$_POST['poging'].' van '.$cfg['poging'];
} else {
session_start();
$res = mysql_query("SELECT * FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'");
$row = mysql_fetch_assoc($res);
setcookie("gebruikersnaam",$row['gebruikersnaam'],time()+$_POST['tijd'],"/");
setcookie("wachtwoord",$row['wachtwoord'],time()+$_POST['tijd'],"/");
$_SESSION['gebruiker'] = $row['gebruikersnaam'];
$_SESSION['gid'] = $row['id'];
header("Location: ingelogged.php");
}
} ?>
</body>
</html>
Gewijzigd op 28/09/2020 17:18:50 door - Ariën -
Gelieve niet onnodig te linkspammen en oude topics omhoog te halen. Dit topic doe ik op slot.