Ik heb een toto gemaakt voor de WK 2006.

Toto

Hij bestaat uit 2 codes, option.php en verwerken.php (beide zelfde map).

Ik gebruik de code if en isset om te kijken of alle velden ingevuld zijn, maar om de een of andere reden maakt het niet uit of je je naam invult, hij gebruikt dan gewoon één spatie als naam.

Hoe kan ik dit verhelpen?
Door er een patroon aan vast te knopen en dan hierop checken.
Ga je deze code hier ook delen of is dit "topsecret"??
Zal ik hem dan maar neerzetten :)?

<?php

if (IsSet($_POST['verzenden']) && isset($naam) && isset($groepa) && isset($groepb) && isset($groepc) && isset($groepd) && isset($groepe) && isset($groepf) && isset($groepg) && isset($groeph)) {

echo "Beste <strong>".$_POST['naam']."</strong>,<br>";
echo "<br>";
echo "Dit zijn de antwoorden die opgestuurd zijn naar de webmaster.";
echo "<br>";
echo "<br>";
echo "<table width=80% id=main>";
echo "<tr><td width=25%><strong>Groep A</strong></td><td width=25%><strong>Groep B</strong></td><td width=25%><strong>Groep C</strong></td><td width=25%><strong>Groep D</strong></td></tr>";
echo "<tr><td width=25%>".$_POST['groepa']."</td><td width=25%>".$_POST['groepb']."</td><td width=25%>".$_POST['groepc']."</td><td width=25%>".$_POST['groepd']."</td></tr>";
echo "<tr><td>&nbsp</td></tr>";
echo "<tr><td width=25%><strong>Groep E</strong></td><td width=25%><strong>Groep F</strong></td><td width=25%><strong>Groep G</strong></td><td width=25%><strong>Groep H</strong></td></tr>";
echo "<tr><td width=25%>".$_POST['groepe']."</td><td width=25%>".$_POST['groepf']."</td><td width=25%>".$_POST['groepg']."</td><td width=25%>".$_POST['groeph']."</td></tr>";
echo "</table>";

$naam = $_POST['naam'] ;
$a = $_POST['groepa'] ;
$b = $_POST['groepb'] ;
$c = $_POST['groepc'] ;
$d = $_POST['groepd'] ;
$e = $_POST['groepe'] ;
$f = $_POST['groepf'] ;
$g = $_POST['groepg'] ;
$h = $_POST['groeph'] ;

$bericht = "$naam heeft de volgende antwoorden ingestuurd: \n\nA: $a \nB: $b \nC: $c \nD: $d \nE: $e \nF: $f \nG: $g \nH: $h \n";

mail ("[email protected]", "Toto WK van: $naam", $bericht, "FROM: [email protected]");

echo "<br>";
echo "Bedankt voor het meedoen aan de toto.<br>";


} else {

echo "<strong>Vul alle velden correct in aub</strong><br><br>";
echo "Klik <a href=javascript:history.go(-1)>hier</a> om terug te gaan.";

}
?>
Heb je iets aan deze link:

reguliere expressies

Leuk en sympathiek dat je de code ook deelt :-)
Je kan hem ook bij scripten zetten...
Even gekeken en je moet nog een ; achter &nbsp zetten nu staat er: &nbspCosta Rica
Op de pagina met het formulier vul je $naam al met de informatie die gepost is: $naam = $_POST['naam'];.

Zet hier nog even bij:
<?php
$naam = trim($naam);
?>

Dan deze regel:
<?php
if (IsSet($_POST['verzenden']) && isset($naam) && isset($groepa) && isset($groepb) && isset($groepc) && isset($groepd) && isset($groepe) && isset($groepf) && isset($groepg) && isset($groeph)) {
?>

wijzigen in:
<?php
if (IsSet($_POST['verzenden']) && isset($naam) && !empty($naam) && isset($groepa) && isset($groepb) && isset($groepc) && isset($groepd) && isset($groepe) && isset($groepf) && isset($groepg) && isset($groeph)) {
?>
trim -- Strip whitespace (or other characters) from the beginning and end of a string

This function returns a string with whitespace stripped from the beginning and end of str. Without the second parameter, trim() will strip these characters:

*

" " (ASCII 32 (0x20)), an ordinary space.
*

"\t" (ASCII 9 (0x09)), a tab.
*

"\n" (ASCII 10 (0x0A)), a new line (line feed).
*

"\r" (ASCII 13 (0x0D)), a carriage return.
*

"\0" (ASCII 0 (0x00)), the NUL-byte.
*

"\x0B" (ASCII 11 (0x0B)), a vertical tab.
Burdy zo doet hij het wel, hartelijk bedankt! :)
Ik snap de trim regel nu ook, als ik alleen maar spaties invoer geeft hij een error, omdat die dus worden weggehaald, waardoor hij leeg is.

Bedankt allemaal!
Graag gedaan.

Reageren