controle op lege velden
Ik heb nu zoveel pogingen gedaan om op mijn gastenboek een controle te krijgen op de invulvelden. Oftewel schrijft hij dan geen berichten meer in de database, oftewel krijg ik een error, ...
Altijd wel iets mis.
Zou er iemand me kunnen helpen?
Het volledige schrijfgedeelte staat hieronder. Op de site moet GEEN controle komen.
Er staat ook wel een mailfunctie in, ik hoop dat die er kan blijven...
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Gastenboek</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<h2>Teken het gastenboek!</h2>
<form name="form1" method="post" action="">
<table border="0">
<tr align="left" valign="top">
<td align="right">Voornaam</td>
<td>
<input name="voornaam" type="text" id="voornaam" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Achternaam</td>
<td>
<input name="achternaam" type="text" id="achternaam" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">e-mailadres</td>
<td>
<input name="site" type="text" id="site" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Site</td>
<td>
<input name="email" type="text" id="email" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Uw bijdrage:</td>
<td>
<textarea name="bijdrage" cols="45" rows="10"></textarea></td>
</tr>
<tr align="left" valign="top">
<td align="right"> </td>
<td><input type="submit" name="Submit" value="Verzenden">
<input name="reset" type="reset" id="reset" value="Leegmaken">
<input name="datum" type="hidden" id="datum" value=""></td>
</tr>
</table>
</form>
<p><a href="gastenboek_lees.php">Bekijk alle bijdragen in het gastenboek</a></p>
</body>
</html>
Altijd wel iets mis.
Zou er iemand me kunnen helpen?
Het volledige schrijfgedeelte staat hieronder. Op de site moet GEEN controle komen.
Er staat ook wel een mailfunctie in, ik hoop dat die er kan blijven...
Code (php)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Gastenboek</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<h2>Teken het gastenboek!</h2>
<form name="form1" method="post" action="">
<table border="0">
<tr align="left" valign="top">
<td align="right">Voornaam</td>
<td>
<input name="voornaam" type="text" id="voornaam" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Achternaam</td>
<td>
<input name="achternaam" type="text" id="achternaam" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">e-mailadres</td>
<td>
<input name="site" type="text" id="site" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Site</td>
<td>
<input name="email" type="text" id="email" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Uw bijdrage:</td>
<td>
<textarea name="bijdrage" cols="45" rows="10"></textarea></td>
</tr>
<tr align="left" valign="top">
<td align="right"> </td>
<td><input type="submit" name="Submit" value="Verzenden">
<input name="reset" type="reset" id="reset" value="Leegmaken">
<input name="datum" type="hidden" id="datum" value=""></td>
</tr>
</table>
</form>
<p><a href="gastenboek_lees.php">Bekijk alle bijdragen in het gastenboek</a></p>
</body>
</html>
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
44
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
44
<?
}else{
$query="INSERT INTO gastenboek1 (voornaam, achternaam, email, site, bijdrage, datum) ";
$query .= "VALUES ('";
$query .= $_POST["voornaam"] ."', '" ;
$query .= $_POST["achternaam"] ."', '" ;
$query .= $_POST["email"] ."', '" ;
$query .= $_POST["site"] ."', '" ;
$query .= $_POST["bijdrage"] ."', '";
$query .= $_POST["datum"] . "');" ;
$result = mysql_query($query) or die ("FOUT: " . mysql_error());
/*Emailadressen uit db halen */
$resultaat = mysql_query("SELECT email FROM users1") or die ("FOUT: ".mysql_error());
/* emailadressen in 1 variabele zetten gescheiden door komma's */
$i = 0 ;
while ($row = mysql_fetch_array($resultaat)){
if ($i == 0){
$emailadressen = $row['email'];
} else {
$emailadressen .= ", ".$row['email'];
}
$i++;
}
/* mailtje versturen */
$checkmail = mail("".$emailadressen."","Bericht in Gastenboek geplaatst door: ".$_POST['voornaam']." ".$_POST['achternaam']."","".$_POST['bijdrage']."");
if (!$checkmail){
echo "Fout bij versturen van een email...";
}
echo("<h2>Bedankt voor uw bijdrage!</h2>\n");
echo("De volgende gegevens zijn ingevoegd:<br>\n");
echo("Voornaam: <b>". $_POST["voornaam"] . "</b><br>");
echo("Achternaam: <b>". $_POST["achternaam"] . "</b><br>");
echo("E-mailadres: <b>". $_POST["email"] . "</b><br>");
echo("Site: <b>". $_POST["site"] . "</b><br>");
echo("Uw bijdrage: <b>". $_POST["bijdrage"] . "</b><br>");
echo("<hr><a href=\"gastenboek_schrijf.php\">Nog een bijdrage schrijven</a> |
<a href=\"gastenboek_lees.php\">Overzicht van alle bijdragen</a>");
}
?>
}else{
$query="INSERT INTO gastenboek1 (voornaam, achternaam, email, site, bijdrage, datum) ";
$query .= "VALUES ('";
$query .= $_POST["voornaam"] ."', '" ;
$query .= $_POST["achternaam"] ."', '" ;
$query .= $_POST["email"] ."', '" ;
$query .= $_POST["site"] ."', '" ;
$query .= $_POST["bijdrage"] ."', '";
$query .= $_POST["datum"] . "');" ;
$result = mysql_query($query) or die ("FOUT: " . mysql_error());
/*Emailadressen uit db halen */
$resultaat = mysql_query("SELECT email FROM users1") or die ("FOUT: ".mysql_error());
/* emailadressen in 1 variabele zetten gescheiden door komma's */
$i = 0 ;
while ($row = mysql_fetch_array($resultaat)){
if ($i == 0){
$emailadressen = $row['email'];
} else {
$emailadressen .= ", ".$row['email'];
}
$i++;
}
/* mailtje versturen */
$checkmail = mail("".$emailadressen."","Bericht in Gastenboek geplaatst door: ".$_POST['voornaam']." ".$_POST['achternaam']."","".$_POST['bijdrage']."");
if (!$checkmail){
echo "Fout bij versturen van een email...";
}
echo("<h2>Bedankt voor uw bijdrage!</h2>\n");
echo("De volgende gegevens zijn ingevoegd:<br>\n");
echo("Voornaam: <b>". $_POST["voornaam"] . "</b><br>");
echo("Achternaam: <b>". $_POST["achternaam"] . "</b><br>");
echo("E-mailadres: <b>". $_POST["email"] . "</b><br>");
echo("Site: <b>". $_POST["site"] . "</b><br>");
echo("Uw bijdrage: <b>". $_POST["bijdrage"] . "</b><br>");
echo("<hr><a href=\"gastenboek_schrijf.php\">Nog een bijdrage schrijven</a> |
<a href=\"gastenboek_lees.php\">Overzicht van alle bijdragen</a>");
}
?>
Misschien moet je eens je errors vermelden? :)
action="">
Moet dat niet gewoon $PHP_SELF zijn ?
//check alle variabelen
if ($HTTP_POST_VARS["voornaam"] && $HTTP_POST_VARS["achternaam"] && enz...)
{
/*Jou tabel zetten en hier kijken we of het bericht niet reeds bestaat en anders zetten we het bericht in de db.
*/
$checksql = "SELECT id FROM $tabel WHERE site = '$HTTP_POST_VARS[site]' AND bijdrage = '$HTTP_POST_VARS[bijdrage]' ";
$checkres = mysql_query($checksql);
if (mysql_num_rows($checkres) >= 1)
{
echo "Dit is al eens verstuurd.";
}
else
{
// de rest van jou code .
Bij het mailen zou ik toch nog maar eens zien of het juist is ingevuld die functie mail.
mail($to, $subject, $bericht, $headers )
Moet dat niet gewoon $PHP_SELF zijn ?
//check alle variabelen
if ($HTTP_POST_VARS["voornaam"] && $HTTP_POST_VARS["achternaam"] && enz...)
{
/*Jou tabel zetten en hier kijken we of het bericht niet reeds bestaat en anders zetten we het bericht in de db.
*/
$checksql = "SELECT id FROM $tabel WHERE site = '$HTTP_POST_VARS[site]' AND bijdrage = '$HTTP_POST_VARS[bijdrage]' ";
$checkres = mysql_query($checksql);
if (mysql_num_rows($checkres) >= 1)
{
echo "Dit is al eens verstuurd.";
}
else
{
// de rest van jou code .
Bij het mailen zou ik toch nog maar eens zien of het juist is ingevuld die functie mail.
mail($to, $subject, $bericht, $headers )
Quote:
Nee hoor $_SERVR["PHP_SELF"]; is net het het zelfde $_HTTP_POST_VARS
Superglobals dus
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
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
<?
if($submit){
if(strlen($_POST["voornaam"] )==0){
$error_msg[] = "Uw moet een geldige voornaam opgeven!<br>";
}
if((strlen($_POST["voornaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U voornaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["achternaam"] )==0){
$error_msg[] = "Uw moet een geldige achternaam opgeven!<br>";
}
if((strlen($_POST["achternaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U achternaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["email"] l)==0){
$error_msg[] .= "Vul astublief een geldig e-mail adres in!<br>";
}
if((strlen($_POST["email"] )!=0) && (!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$", $_POST["email"] ))){ // email moet geldige constructie hebben, bv [email protected]
$error_msg[] .= "E-mail adres is ongeldig, vul dit correct in!<br>";
}
if(strlen($_POST["bijdrage"] t)==0){
$error_msg[] .= "Vul een bericht in!<br>";
}
if((strlen($_POST["bijdrage"] )!=0) && (strlen($_POST["bijdrage"] ) < 5)){
$error_msg[] .= "Het bericht moet minimaal uit 5 tekens bestaan!<br>";
}
if($error_msg){ // als dingen niet correct zijn ingevult
echo "<font face=verdana size=1>";
echo "Uw bericht kon niet verzonden worden vanwege de volgende redenen: <br><br>";
for($i = 0, $j = 1; $i < 4; $i++, $j++){
if($error_msg[$i]){
echo $j . ". " . $error_msg[$i];
}
}
echo "<br>Ga <a href=javascript:history.go(-1)>terug</a> om het probleem te verhelpen.";
echo "</font>";
}else{
?>
if($submit){
if(strlen($_POST["voornaam"] )==0){
$error_msg[] = "Uw moet een geldige voornaam opgeven!<br>";
}
if((strlen($_POST["voornaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U voornaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["achternaam"] )==0){
$error_msg[] = "Uw moet een geldige achternaam opgeven!<br>";
}
if((strlen($_POST["achternaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U achternaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["email"] l)==0){
$error_msg[] .= "Vul astublief een geldig e-mail adres in!<br>";
}
if((strlen($_POST["email"] )!=0) && (!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$", $_POST["email"] ))){ // email moet geldige constructie hebben, bv [email protected]
$error_msg[] .= "E-mail adres is ongeldig, vul dit correct in!<br>";
}
if(strlen($_POST["bijdrage"] t)==0){
$error_msg[] .= "Vul een bericht in!<br>";
}
if((strlen($_POST["bijdrage"] )!=0) && (strlen($_POST["bijdrage"] ) < 5)){
$error_msg[] .= "Het bericht moet minimaal uit 5 tekens bestaan!<br>";
}
if($error_msg){ // als dingen niet correct zijn ingevult
echo "<font face=verdana size=1>";
echo "Uw bericht kon niet verzonden worden vanwege de volgende redenen: <br><br>";
for($i = 0, $j = 1; $i < 4; $i++, $j++){
if($error_msg[$i]){
echo $j . ". " . $error_msg[$i];
}
}
echo "<br>Ga <a href=javascript:history.go(-1)>terug</a> om het probleem te verhelpen.";
echo "</font>";
}else{
?>
De website word niet gecontroleerd, weet de code niet meer van http:// controle
Hopelijk is de rest duidelijk genoeg, je moet het zelf wel ff inbouwen
Ik heb het er tussen geplaatst, maar het werkt dus niets (waarschijnlijk mijn fout, ben maar een n00b).
Hier is het, waar staat het verkeerd?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Gastenboek</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<h2>Teken het gastenboek!</h2>
<form name="form1" method="post" action="">
<table border="0">
<tr align="left" valign="top">
<td align="right">Voornaam</td>
<td>
<input name="voornaam" type="text" id="voornaam" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Achternaam</td>
<td>
<input name="achternaam" type="text" id="achternaam" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">e-mailadres</td>
<td>
<input name="site" type="text" id="site" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Site</td>
<td>
<input name="email" type="text" id="email" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Uw bijdrage:</td>
<td>
<textarea name="bijdrage" cols="45" rows="10"></textarea></td>
</tr>
<tr align="left" valign="top">
<td align="right"> </td>
<td><input type="submit" name="Submit" value="Verzenden">
<input name="reset" type="reset" id="reset" value="Leegmaken">
<input name="datum" type="hidden" id="datum" value=""></td>
</tr>
</table>
</form>
<p><a href="gastenboek_lees.php">Bekijk alle bijdragen in het gastenboek</a></p>
</body>
</html>
Hier is het, waar staat het verkeerd?
Code (php)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Gastenboek</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<h2>Teken het gastenboek!</h2>
<form name="form1" method="post" action="">
<table border="0">
<tr align="left" valign="top">
<td align="right">Voornaam</td>
<td>
<input name="voornaam" type="text" id="voornaam" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Achternaam</td>
<td>
<input name="achternaam" type="text" id="achternaam" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">e-mailadres</td>
<td>
<input name="site" type="text" id="site" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Site</td>
<td>
<input name="email" type="text" id="email" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Uw bijdrage:</td>
<td>
<textarea name="bijdrage" cols="45" rows="10"></textarea></td>
</tr>
<tr align="left" valign="top">
<td align="right"> </td>
<td><input type="submit" name="Submit" value="Verzenden">
<input name="reset" type="reset" id="reset" value="Leegmaken">
<input name="datum" type="hidden" id="datum" value=""></td>
</tr>
</table>
</form>
<p><a href="gastenboek_lees.php">Bekijk alle bijdragen in het gastenboek</a></p>
</body>
</html>
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<?
}else{
if($submit){
if(strlen($_POST["voornaam"] )==0){
$error_msg[] = "Uw moet een geldige voornaam opgeven!<br>";
}
if((strlen($_POST["voornaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U voornaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["achternaam"] )==0){
$error_msg[] = "Uw moet een geldige achternaam opgeven!<br>";
}
if((strlen($_POST["achternaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U achternaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["email"] )==0){
$error_msg[] .= "Vul astublief een geldig e-mail adres in!<br>";
}
if((strlen($_POST["email"] )!=0) && (!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$", $_POST["email"] ))){
}
if(strlen($_POST["bijdrage"] )==0){
$error_msg[] .= "Vul een bericht in!<br>";
}
if((strlen($_POST["bijdrage"] )!=0) && (strlen($_POST["bijdrage"] ) < 5)){
$error_msg[] .= "Het bericht moet minimaal uit 5 tekens bestaan!<br>";
}
if($error_msg){ // als dingen niet correct zijn ingevult
echo "<font face=verdana size=1>";
echo "Uw bericht kon niet verzonden worden vanwege de volgende redenen: <br><br>";
for($i = 0, $j = 1; $i < 4; $i++, $j++){
if($error_msg[$i]){
echo $j . ". " . $error_msg[$i];
}
}
}
echo "<br>Ga <a href=javascript:history.go(-1)>terug</a> om het probleem te verhelpen.";
echo "</font>";
}else{
$query="INSERT INTO gastenboek1 (voornaam, achternaam, email, site, bijdrage, datum) ";
$query .= "VALUES ('";
$query .= $_POST["voornaam"] ."', '" ;
$query .= $_POST["achternaam"] ."', '" ;
$query .= $_POST["email"] ."', '" ;
$query .= $_POST["site"] ."', '" ;
$query .= $_POST["bijdrage"] ."', '";
$query .= $_POST["datum"] . "');" ;
$result = mysql_query($query) or die ("FOUT: " . mysql_error());
/*Emailadressen uit db halen */
$resultaat = mysql_query("SELECT email FROM users1") or die ("FOUT: ".mysql_error());
/* emailadressen in 1 variabele zetten gescheiden door komma's */
$i = 0 ;
while ($row = mysql_fetch_array($resultaat)){
if ($i == 0){
$emailadressen = $row['email'];
} else {
$emailadressen .= ", ".$row['email'];
}
$i++;
}
/* mailtje versturen */
$checkmail = mail("".$emailadressen."","Bericht in Gastenboek geplaatst door: ".$_POST['voornaam']." ".$_POST['achternaam']."","".$_POST['bijdrage']."");//email moet geldige constructie hebben, bv [email protected]
if (!$checkmail){
echo "Fout bij versturen van een email...";
}
echo("<h2>Bedankt voor uw bijdrage!</h2>\n");
echo("De volgende gegevens zijn ingevoegd:<br>\n");
echo("Voornaam: <b>". $_POST["voornaam"] . "</b><br>");
echo("Achternaam: <b>". $_POST["achternaam"] . "</b><br>");
echo("E-mailadres: <b>". $_POST["email"] . "</b><br>");
echo("Site: <b>". $_POST["site"] . "</b><br>");
echo("Uw bijdrage: <b>". $_POST["bijdrage"] . "</b><br>");
echo("<hr><a href=\"gastenboek_schrijf.php\">Nog een bijdrage schrijven</a> |
<a href=\"gastenboek_lees.php\">Overzicht van alle bijdragen</a>");
}
}
?>
}else{
if($submit){
if(strlen($_POST["voornaam"] )==0){
$error_msg[] = "Uw moet een geldige voornaam opgeven!<br>";
}
if((strlen($_POST["voornaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U voornaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["achternaam"] )==0){
$error_msg[] = "Uw moet een geldige achternaam opgeven!<br>";
}
if((strlen($_POST["achternaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U achternaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["email"] )==0){
$error_msg[] .= "Vul astublief een geldig e-mail adres in!<br>";
}
if((strlen($_POST["email"] )!=0) && (!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$", $_POST["email"] ))){
}
if(strlen($_POST["bijdrage"] )==0){
$error_msg[] .= "Vul een bericht in!<br>";
}
if((strlen($_POST["bijdrage"] )!=0) && (strlen($_POST["bijdrage"] ) < 5)){
$error_msg[] .= "Het bericht moet minimaal uit 5 tekens bestaan!<br>";
}
if($error_msg){ // als dingen niet correct zijn ingevult
echo "<font face=verdana size=1>";
echo "Uw bericht kon niet verzonden worden vanwege de volgende redenen: <br><br>";
for($i = 0, $j = 1; $i < 4; $i++, $j++){
if($error_msg[$i]){
echo $j . ". " . $error_msg[$i];
}
}
}
echo "<br>Ga <a href=javascript:history.go(-1)>terug</a> om het probleem te verhelpen.";
echo "</font>";
}else{
$query="INSERT INTO gastenboek1 (voornaam, achternaam, email, site, bijdrage, datum) ";
$query .= "VALUES ('";
$query .= $_POST["voornaam"] ."', '" ;
$query .= $_POST["achternaam"] ."', '" ;
$query .= $_POST["email"] ."', '" ;
$query .= $_POST["site"] ."', '" ;
$query .= $_POST["bijdrage"] ."', '";
$query .= $_POST["datum"] . "');" ;
$result = mysql_query($query) or die ("FOUT: " . mysql_error());
/*Emailadressen uit db halen */
$resultaat = mysql_query("SELECT email FROM users1") or die ("FOUT: ".mysql_error());
/* emailadressen in 1 variabele zetten gescheiden door komma's */
$i = 0 ;
while ($row = mysql_fetch_array($resultaat)){
if ($i == 0){
$emailadressen = $row['email'];
} else {
$emailadressen .= ", ".$row['email'];
}
$i++;
}
/* mailtje versturen */
$checkmail = mail("".$emailadressen."","Bericht in Gastenboek geplaatst door: ".$_POST['voornaam']." ".$_POST['achternaam']."","".$_POST['bijdrage']."");//email moet geldige constructie hebben, bv [email protected]
if (!$checkmail){
echo "Fout bij versturen van een email...";
}
echo("<h2>Bedankt voor uw bijdrage!</h2>\n");
echo("De volgende gegevens zijn ingevoegd:<br>\n");
echo("Voornaam: <b>". $_POST["voornaam"] . "</b><br>");
echo("Achternaam: <b>". $_POST["achternaam"] . "</b><br>");
echo("E-mailadres: <b>". $_POST["email"] . "</b><br>");
echo("Site: <b>". $_POST["site"] . "</b><br>");
echo("Uw bijdrage: <b>". $_POST["bijdrage"] . "</b><br>");
echo("<hr><a href=\"gastenboek_schrijf.php\">Nog een bijdrage schrijven</a> |
<a href=\"gastenboek_lees.php\">Overzicht van alle bijdragen</a>");
}
}
?>
}else{
if($submit){
if(strlen($_POST["voornaam"] )==0){
$submit moet $Submit worden zie:
<input type="submit" name="Submit" value="Verzenden">
if($submit){
if(strlen($_POST["voornaam"] )==0){
$submit moet $Submit worden zie:
<input type="submit" name="Submit" value="Verzenden">
Nu werkt het al beter, alleen zegt het nu steeds:
Ga terug om het probleem te verhelpen.
Zonder een melding van de fout zelf bij te plaatsen.
Ga terug om het probleem te verhelpen.
Zonder een melding van de fout zelf bij te plaatsen.
ik heb het uit geprobeerd op mijn eigen site. Hij doet het gewoon, alleen er word geen achternaam bij mij neergezet. Ik denk wel bij jouw:
Ik weet niet of ik iets heb veranderd dus hier de code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Gastenboek</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<h2>Teken het gastenboek!</h2>
<form name="form1" method="post" action="">
<table border="0">
<tr align="left" valign="top">
<td align="right">Voornaam</td>
<td>
<input name="voornaam" type="text" id="voornaam" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Achternaam</td>
<td>
<input name="achternaam" type="text" id="achternaam" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">e-mailadres</td>
<td>
<input name="site" type="text" id="site" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Site</td>
<td>
<input name="email" type="text" id="email" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Uw bijdrage:</td>
<td>
<textarea name="bijdrage" cols="45" rows="10"></textarea></td>
</tr>
<tr align="left" valign="top">
<td align="right"> </td>
<td><input type="submit" name="Submit" value="Verzenden">
<input name="reset" type="reset" id="reset" value="Leegmaken">
<input name="datum" type="hidden" id="datum" value=""></td>
</tr>
</table>
</form>
<p><a href="gastenboek_lees.php">Bekijk alle bijdragen in het gastenboek</a></p>
</body>
</html>
Ik weet niet of ik iets heb veranderd dus hier de code:
Code (php)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Gastenboek</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<h2>Teken het gastenboek!</h2>
<form name="form1" method="post" action="">
<table border="0">
<tr align="left" valign="top">
<td align="right">Voornaam</td>
<td>
<input name="voornaam" type="text" id="voornaam" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Achternaam</td>
<td>
<input name="achternaam" type="text" id="achternaam" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">e-mailadres</td>
<td>
<input name="site" type="text" id="site" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Site</td>
<td>
<input name="email" type="text" id="email" size="30"></td>
</tr>
<tr align="left" valign="top">
<td align="right">Uw bijdrage:</td>
<td>
<textarea name="bijdrage" cols="45" rows="10"></textarea></td>
</tr>
<tr align="left" valign="top">
<td align="right"> </td>
<td><input type="submit" name="Submit" value="Verzenden">
<input name="reset" type="reset" id="reset" value="Leegmaken">
<input name="datum" type="hidden" id="datum" value=""></td>
</tr>
</table>
</form>
<p><a href="gastenboek_lees.php">Bekijk alle bijdragen in het gastenboek</a></p>
</body>
</html>
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<?
}else{
if($submit){
if(strlen($_POST["voornaam"] )==0){
$error_msg[] = "Uw moet een geldige voornaam opgeven!<br>";
}
if((strlen($_POST["voornaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U voornaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["achternaam"] )==0){
$error_msg[] = "Uw moet een geldige achternaam opgeven!<br>";
}
if((strlen($_POST["achternaam"] )!=0) && (strlen($_POST["achteraam"] ) < 3)){
$error_msg[] .= "U achternaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["email"] )==0){
$error_msg[] .= "Vul astublief een geldig e-mail adres in!<br>";
}
if((strlen($_POST["email"] )!=0) && (!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$", $_POST["email"] ))){
}
if(strlen($_POST["bijdrage"] )==0){
$error_msg[] .= "Vul een bericht in!<br>";
}
if((strlen($_POST["bijdrage"] )!=0) && (strlen($_POST["bijdrage"] ) < 5)){
$error_msg[] .= "Het bericht moet minimaal uit 5 tekens bestaan!<br>";
}
if($error_msg){ // als dingen niet correct zijn ingevult
echo "<font face=verdana size=1>";
echo "Uw bericht kon niet verzonden worden vanwege de volgende redenen: <br><br>";
for($i = 0, $j = 1; $i < 4; $i++, $j++){
if($error_msg[$i]){
echo $j . ". " . $error_msg[$i];
}
}
}
echo "<br>Ga <a href=javascript:history.go(-1)>terug</a> om het probleem te verhelpen.";
echo "</font>";
}else{
$query="INSERT INTO gastenboek1 (voornaam, achternaam, email, site, bijdrage, datum) ";
$query .= "VALUES ('";
$query .= $_POST["voornaam"] ."', '" ;
$query .= $_POST["achternaam"] ."', '" ;
$query .= $_POST["email"] ."', '" ;
$query .= $_POST["site"] ."', '" ;
$query .= $_POST["bijdrage"] ."', '";
$query .= $_POST["datum"] . "');" ;
$result = mysql_query($query) or die ("FOUT: " . mysql_error());
/*Emailadressen uit db halen */
$resultaat = mysql_query("SELECT email FROM user1") or die ("FOUT: ".mysql_error());
/* emailadressen in 1 variabele zetten gescheiden door komma's */
$i = 0 ;
while ($row = mysql_fetch_array($resultaat)){
if ($i == 0){
$emailadressen = $row['email'];
} else {
$emailadressen .= ", ".$row['email'];
}
$i++;
}
/* mailtje versturen */
$checkmail = mail("".$emailadressen."","Bericht in Gastenboek geplaatst door: ".$_POST['voornaam']." ".$_POST['achternaam']."","".$_POST['bijdrage']."");//email moet geldige constructie hebben, bv [email protected]
if (!$checkmail){
echo "Fout bij versturen van een email...";
}
echo("<h2>Bedankt voor uw bijdrage!</h2>\n");
echo("De volgende gegevens zijn ingevoegd:<br>\n");
echo("Voornaam: <b>". $_POST["voornaam"] . "</b><br>");
echo("Achternaam: <b>". $_POST["achternaam"] . "</b><br>");
echo("E-mailadres: <b>". $_POST["email"] . "</b><br>");
echo("Site: <b>". $_POST["site"] . "</b><br>");
echo("Uw bijdrage: <b>". $_POST["bijdrage"] . "</b><br>");
echo("<hr><a href=\"gastenboek_schrijf.php\">Nog een bijdrage schrijven</a> |
<a href=\"gastenboek_lees.php\">Overzicht van alle bijdragen</a>");
}
}
?>
}else{
if($submit){
if(strlen($_POST["voornaam"] )==0){
$error_msg[] = "Uw moet een geldige voornaam opgeven!<br>";
}
if((strlen($_POST["voornaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U voornaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["achternaam"] )==0){
$error_msg[] = "Uw moet een geldige achternaam opgeven!<br>";
}
if((strlen($_POST["achternaam"] )!=0) && (strlen($_POST["achteraam"] ) < 3)){
$error_msg[] .= "U achternaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["email"] )==0){
$error_msg[] .= "Vul astublief een geldig e-mail adres in!<br>";
}
if((strlen($_POST["email"] )!=0) && (!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$", $_POST["email"] ))){
}
if(strlen($_POST["bijdrage"] )==0){
$error_msg[] .= "Vul een bericht in!<br>";
}
if((strlen($_POST["bijdrage"] )!=0) && (strlen($_POST["bijdrage"] ) < 5)){
$error_msg[] .= "Het bericht moet minimaal uit 5 tekens bestaan!<br>";
}
if($error_msg){ // als dingen niet correct zijn ingevult
echo "<font face=verdana size=1>";
echo "Uw bericht kon niet verzonden worden vanwege de volgende redenen: <br><br>";
for($i = 0, $j = 1; $i < 4; $i++, $j++){
if($error_msg[$i]){
echo $j . ". " . $error_msg[$i];
}
}
}
echo "<br>Ga <a href=javascript:history.go(-1)>terug</a> om het probleem te verhelpen.";
echo "</font>";
}else{
$query="INSERT INTO gastenboek1 (voornaam, achternaam, email, site, bijdrage, datum) ";
$query .= "VALUES ('";
$query .= $_POST["voornaam"] ."', '" ;
$query .= $_POST["achternaam"] ."', '" ;
$query .= $_POST["email"] ."', '" ;
$query .= $_POST["site"] ."', '" ;
$query .= $_POST["bijdrage"] ."', '";
$query .= $_POST["datum"] . "');" ;
$result = mysql_query($query) or die ("FOUT: " . mysql_error());
/*Emailadressen uit db halen */
$resultaat = mysql_query("SELECT email FROM user1") or die ("FOUT: ".mysql_error());
/* emailadressen in 1 variabele zetten gescheiden door komma's */
$i = 0 ;
while ($row = mysql_fetch_array($resultaat)){
if ($i == 0){
$emailadressen = $row['email'];
} else {
$emailadressen .= ", ".$row['email'];
}
$i++;
}
/* mailtje versturen */
$checkmail = mail("".$emailadressen."","Bericht in Gastenboek geplaatst door: ".$_POST['voornaam']." ".$_POST['achternaam']."","".$_POST['bijdrage']."");//email moet geldige constructie hebben, bv [email protected]
if (!$checkmail){
echo "Fout bij versturen van een email...";
}
echo("<h2>Bedankt voor uw bijdrage!</h2>\n");
echo("De volgende gegevens zijn ingevoegd:<br>\n");
echo("Voornaam: <b>". $_POST["voornaam"] . "</b><br>");
echo("Achternaam: <b>". $_POST["achternaam"] . "</b><br>");
echo("E-mailadres: <b>". $_POST["email"] . "</b><br>");
echo("Site: <b>". $_POST["site"] . "</b><br>");
echo("Uw bijdrage: <b>". $_POST["bijdrage"] . "</b><br>");
echo("<hr><a href=\"gastenboek_schrijf.php\">Nog een bijdrage schrijven</a> |
<a href=\"gastenboek_lees.php\">Overzicht van alle bijdragen</a>");
}
}
?>
Hetgene wat jij hebt geplaatst, plaatst wel her bericht in de databse, maar doet geen controle op velden meer... :-s
Wat je anders kan doen, is dat je er 2 pagina's van maakt. 1 met het formulier en de ander met controle en verzending
Wat moet ik dan in die 2de pagina (met verzending en controle) plaatsen? Ik heb het hieronder staande geprobeert, maar dan is er geen controle meer en geeft hij geen bericht meer weer van wat hij heeft geplaatst, dus blanco pagina.
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<?
if($submit){
if(strlen($_POST["voornaam"] )==0){
$error_msg[] = "Uw moet een geldige voornaam opgeven!<br>";
}
if((strlen($_POST["voornaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U voornaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["achternaam"] )==0){
$error_msg[] = "Uw moet een geldige achternaam opgeven!<br>";
}
if((strlen($_POST["achternaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U achternaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["email"] )==0){
$error_msg[] .= "Vul astublief een geldig e-mail adres in!<br>";
}
if((strlen($_POST["email"] )!=0) && (!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$", $_POST["email"] ))){ // email moet geldige constructie hebben, bv [email protected]
$error_msg[] .= "E-mail adres is ongeldig, vul dit correct in!<br>";
}
if(strlen($_POST["bijdrage"] )==0){
$error_msg[] .= "Vul een bericht in!<br>";
}
if((strlen($_POST["bijdrage"] )!=0) && (strlen($_POST["bijdrage"] ) < 5)){
$error_msg[] .= "Het bericht moet minimaal uit 5 tekens bestaan!<br>";
}
if($error_msg){ // als dingen niet correct zijn ingevult
echo "<font face=verdana size=1>";
echo "Uw bericht kon niet verzonden worden vanwege de volgende redenen: <br><br>";
for($i = 0, $j = 1; $i < 4; $i++, $j++){
if($error_msg[$i]){
echo $j . ". " . $error_msg[$i];
}
}
echo "<br>Ga <a href=javascript:history.go(-1)>terug</a> om het probleem te verhelpen.";
echo "</font>";
}else{
$query="INSERT INTO gastenboek1 (voornaam, achternaam, email, site, bijdrage, datum) ";
$query .= "VALUES ('";
$query .= $_POST["voornaam"] ."', '" ;
$query .= $_POST["achternaam"] ."', '" ;
$query .= $_POST["email"] ."', '" ;
$query .= $_POST["site"] ."', '" ;
$query .= $_POST["bijdrage"] ."', '";
$query .= $_POST["datum"] . "');" ;
$result = mysql_query($query) or die ("FOUT: " . mysql_error());
/*Emailadressen uit db halen */
$resultaat = mysql_query("SELECT email FROM users1") or die ("FOUT: ".mysql_error());
/* emailadressen in 1 variabele zetten gescheiden door komma's */
$i = 0 ;
while ($row = mysql_fetch_array($resultaat)){
if ($i == 0){
$emailadressen = $row['email'];
} else {
$emailadressen .= ", ".$row['email'];
}
$i++;
}
/* mailtje versturen */
$checkmail = mail("".$emailadressen."","Bericht in Gastenboek geplaatst door: ".$_POST['voornaam']." ".$_POST['achternaam']."","".$_POST['bijdrage']."");
if (!$checkmail){
echo "Fout bij versturen van een email...";
}
echo("<h2>Bedankt voor uw bijdrage!</h2>\n");
echo("De volgende gegevens zijn ingevoegd:<br>\n");
echo("Voornaam: <b>". $_POST["voornaam"] . "</b><br>");
echo("Achternaam: <b>". $_POST["achternaam"] . "</b><br>");
echo("E-mailadres: <b>". $_POST["email"] . "</b><br>");
echo("Site: <b>". $_POST["site"] . "</b><br>");
echo("Uw bijdrage: <b>". $_POST["bijdrage"] . "</b><br>");
echo("<hr><a href=\"gastenboek_schrijf.php\">Nog een bijdrage schrijven</a> |
<a href=\"gastenboek_lees.php\">Overzicht van alle bijdragen</a>");
}
}
?>
if($submit){
if(strlen($_POST["voornaam"] )==0){
$error_msg[] = "Uw moet een geldige voornaam opgeven!<br>";
}
if((strlen($_POST["voornaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U voornaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["achternaam"] )==0){
$error_msg[] = "Uw moet een geldige achternaam opgeven!<br>";
}
if((strlen($_POST["achternaam"] )!=0) && (strlen($_POST["voornaam"] ) < 3)){
$error_msg[] .= "U achternaam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($_POST["email"] )==0){
$error_msg[] .= "Vul astublief een geldig e-mail adres in!<br>";
}
if((strlen($_POST["email"] )!=0) && (!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$", $_POST["email"] ))){ // email moet geldige constructie hebben, bv [email protected]
$error_msg[] .= "E-mail adres is ongeldig, vul dit correct in!<br>";
}
if(strlen($_POST["bijdrage"] )==0){
$error_msg[] .= "Vul een bericht in!<br>";
}
if((strlen($_POST["bijdrage"] )!=0) && (strlen($_POST["bijdrage"] ) < 5)){
$error_msg[] .= "Het bericht moet minimaal uit 5 tekens bestaan!<br>";
}
if($error_msg){ // als dingen niet correct zijn ingevult
echo "<font face=verdana size=1>";
echo "Uw bericht kon niet verzonden worden vanwege de volgende redenen: <br><br>";
for($i = 0, $j = 1; $i < 4; $i++, $j++){
if($error_msg[$i]){
echo $j . ". " . $error_msg[$i];
}
}
echo "<br>Ga <a href=javascript:history.go(-1)>terug</a> om het probleem te verhelpen.";
echo "</font>";
}else{
$query="INSERT INTO gastenboek1 (voornaam, achternaam, email, site, bijdrage, datum) ";
$query .= "VALUES ('";
$query .= $_POST["voornaam"] ."', '" ;
$query .= $_POST["achternaam"] ."', '" ;
$query .= $_POST["email"] ."', '" ;
$query .= $_POST["site"] ."', '" ;
$query .= $_POST["bijdrage"] ."', '";
$query .= $_POST["datum"] . "');" ;
$result = mysql_query($query) or die ("FOUT: " . mysql_error());
/*Emailadressen uit db halen */
$resultaat = mysql_query("SELECT email FROM users1") or die ("FOUT: ".mysql_error());
/* emailadressen in 1 variabele zetten gescheiden door komma's */
$i = 0 ;
while ($row = mysql_fetch_array($resultaat)){
if ($i == 0){
$emailadressen = $row['email'];
} else {
$emailadressen .= ", ".$row['email'];
}
$i++;
}
/* mailtje versturen */
$checkmail = mail("".$emailadressen."","Bericht in Gastenboek geplaatst door: ".$_POST['voornaam']." ".$_POST['achternaam']."","".$_POST['bijdrage']."");
if (!$checkmail){
echo "Fout bij versturen van een email...";
}
echo("<h2>Bedankt voor uw bijdrage!</h2>\n");
echo("De volgende gegevens zijn ingevoegd:<br>\n");
echo("Voornaam: <b>". $_POST["voornaam"] . "</b><br>");
echo("Achternaam: <b>". $_POST["achternaam"] . "</b><br>");
echo("E-mailadres: <b>". $_POST["email"] . "</b><br>");
echo("Site: <b>". $_POST["site"] . "</b><br>");
echo("Uw bijdrage: <b>". $_POST["bijdrage"] . "</b><br>");
echo("<hr><a href=\"gastenboek_schrijf.php\">Nog een bijdrage schrijven</a> |
<a href=\"gastenboek_lees.php\">Overzicht van alle bijdragen</a>");
}
}
?>
Ik snap het niet meer wat er nu nog fout kan zijn, misschien iemand anders en als niemand reageerd moet je het misschien gaan vragen op andere site's zoals :sitemasters.be en phpfreakz.nl
Sorry,
Remco
Sorry,
Remco
Gewijzigd op 01/02/2004 17:15:00 door Remco nvt
d




