Hallo,

Ik ben met een vakopleiding webdesigner bezig en heb een opdracht waar ik een if else statement moet maken na een form. Echter lukt mij dit niet en weet ik niet precies wat ik fout doe.

Op de index.html file heb ik de volgende code staan:
<!doctype html>
<html>
<body>
	<form action="bestellen.php" method="post">
		Naam: <input type="text" name="naam"><br>
		Leeftijd: <input type="text" name="leeftijd"><br>
		Naam van het spel: <input type="text" name="spel"><br>
		Aantal: <input type="text" name="aantal"><br>
		Prijs per stuk: <input type="text" name="prijs"><br>
		Leeftijdscategorie: <select name="leeftijdscategorie">
			<option value="Alle leeftijden">Alle leeftijden</option>
			<option value="+12 jaar">+12 jaar</option>
			<option value="+14 jaar">+14 jaar</option>
			<option value="+18 jaar">+18 jaar</option>
		</select>
		<input type="submit">
	</form>
</body>
</html>


Na op submit geklikt te hebben kom je dus op bestellen.php en daar is uiteindelijk de bedoeling dat er een if else statement komt dat bepaald of je het spel mag kopen. Die voorwaarde moet ik nog veranderen daarin maar voor nu wou ik eerst even een if else statement werkende maken.

<!doctype html>
<html>
<body>
<?php
if ($leeftijd == 5)
	Dankuwel <?php echo $_POST["naam"]; ?> voor uw bestelling!<br>
	We hebben uw bestelling van <?php echo $_POST["aantal"]; ?> <?php echo $_POST["spel"]; ?> voor <?php echo $_POST["leeftijdscategorie"]; ?> ontvangen!<br>
	Uw leeftijd: <?php echo $_POST["leeftijd"]; ?><br>
	Prijs per stuk: <?php echo $_POST["prijs"]; ?><br>
	Totaal: <?php echo $_POST["prijs"]*$_POST["aantal"]; ?><br>
else
	De statement is incorrect.
?>
</body>
</html>


Dit is de foutmelding die ik krijg na submit geklikt te hebben:

Parse error: syntax error, unexpected '?' in C:\xampp\htdocs\bestellen.php on line 6


Zou iemand mij hiermee kunnen helpen of de juiste richting in wijzen?
Alvast bedankt!

Kevin
Je tekst hoort in een echo, of liever buiten je PHP-blok.
Bedankt voor je snelle reactie,

Hoe zou ik dit buiten het PHP blok kunnen zetten? En daarnaast als ik het in echo de tekst zet pakt de code dan nog wel de delen uit het form die ik erin verwijs?
Na je if een ?> gebruiken. Zo eindig je een PHP-blok.
Dat werkt wel echter krijg ik dan het else gedeelte niet werkende.


<!doctype html>
<html>
<body>
<?php
if ($leeftijd == 5)?>
	Dankuwel <?php echo $_POST["naam"]; ?> voor uw bestelling!<br>
	We hebben uw bestelling van <?php echo $_POST["aantal"]; ?> <?php echo $_POST["spel"]; ?> voor <?php echo $_POST["leeftijdscategorie"]; ?> ontvangen!<br>
	Uw leeftijd: <?php echo $_POST["leeftijd"]; ?><br>
	Prijs per stuk: <?php echo $_POST["prijs"]; ?><br>
	Totaal: <?php echo $_POST["prijs"]*$_POST["aantal"]; ?><br>
<?php
else?>
	De statement is incorrect.
</body>
</html>



Parse error: syntax error, unexpected 'else' (T_ELSE) in C:\xampp\htdocs\bestellen.php on line 12
Je sluit het if-statement niet af met een "endif;".
Ik zou accolades gebruiken bij je if-else statement maar endif; kan ook.

Bij if() en else accolades gebruiken.

if()
{ ...
}
else
{ ...
}
Ik was inderdaad de accolades vergeten, daar moet ik nog aan wennen echter blijft hij de else niet herkennen.

<!doctype html>
<html>
<body>
<?php
if ($leeftijd == 5)?>
{
	Dankuwel <?php echo $_POST["naam"]; ?> voor uw bestelling!<br>
	We hebben uw bestelling van <?php echo $_POST["aantal"]; ?> <?php echo $_POST["spel"]; ?> voor <?php echo $_POST["leeftijdscategorie"]; ?> ontvangen!<br>
	Uw leeftijd: <?php echo $_POST["leeftijd"]; ?><br>
	Prijs per stuk: <?php echo $_POST["prijs"]; ?><br>
	Totaal: <?php echo $_POST["prijs"]*$_POST["aantal"]; ?><br>
}
<?php
else?>
{
	De statement is incorrect.
}
</body>
</html>


Ook als ik else helemaal weghaal geeft hij aan: Notice: Undefined variable: leeftijd in C:\xampp\htdocs\bestellen.php on line 5
Maar laat wel de rest van de code zien dus dat is al een stap verder maar wou het meteen ook even testen.

Sorry voor mijn velen vragen, ben nog maar net begonnen met php ben echter wel erg blij met de velen reacties ^^

Regel 12,15 hoort ook bij je PHPblok. Net als bij het afsluiten.
En waar defineer je $leeftijd? Waar vul je die in?
Ik heb $leeftijd bij index.html in de form gedefineerd als ik het goed heb.


<!doctype html>
<html>
<body>
	<form action="bestellen.php" method="post">
		Naam: <input type="text" name="naam"><br>
		Leeftijd: <input type="text" name="leeftijd"><br>
		Naam van het spel: <input type="text" name="spel"><br>
		Aantal: <input type="text" name="aantal"><br>
		Prijs per stuk: <input type="text" name="prijs"><br>
		Leeftijdscategorie: <select name="leeftijdscategorie">
			<option value="Alle leeftijden">Alle leeftijden</option>
			<option value="+12 jaar">+12 jaar</option>
			<option value="+14 jaar">+14 jaar</option>
			<option value="+18 jaar">+18 jaar</option>
		</select>
		<input type="submit">
	</form>
</body>
</html>

Reageren