Wat nu de bedoeling is dat de klant telkens maar 1 ding kan bestellen, de klant selecteerd dus de eerste en dan mag deze ook alleen maar komen http://hoe.visiondesign.nu/bestel1.php
Alleen hoe moet ik verder?
Wie kan mij opweg helpen hoe ik aangeef in PHP dat als ik die selectie maak dat hij ook alleen maar die rij meeneemt?
Nee het klopt zo. $_POST['check'] bevat het nummer van welk product er besteld wordt. En tevens komen de namen in het formulier overeen: product1 <-> aantal1, product2 <-> aantal2.
Dus door de waarde van $_POST['check'] achter 'aantal' te plakken, wordt uiteindelijk de goede waarde uitgelezen. Stel dus dat het tweede product geselecteerd zou worden, $_POST['check'] is dan '2'. En vervolgen is $_POST['aantal'.$_POST['check']] dus gelijk aan $_POST['aantal2'] en dat is de waarde die je wilt hebben.
Dit probleem is op vele manieren op te lossen. Je zou bijvoorbeeld ook voor de naam van de 'aantal' velden een array kunnen gebruiken en vervolgens daar de juiste key in gaan matchen.
En het uitlezen ervan:
<?php
echo '<p><strong>AANTAL:</strong> ' .$aantal. '</p>';
echo '<p><strong>check:</strong> ' .$check. '</p>';
?>
En ik krijg een mooie error
Notice: Undefined index: aantal in ... line 8
En daar staat:
$aantal = $_SESSION['aantal'];
Heb al wat combinaties geprobeerd maar ik blijf deze error krijgen wat gaat er mis?
Zelf denk ik bij het opslaan van de SESSIE maar ik weet het niet zeker.
Ja, je hebt daar ook alleen $_SESSION['aanta'] staan, en verder niets. Maak daar eens van:
<?php
$_SESSION['aantal'] = $_POST['aantal'];
?>
Daarnaast is het hernoemen van de sessievariabelen zoals je op het einde doet echt overbodig. Je kunt gewoon $_SESSION['check'] en $_SESSION['aantal'] gebruiken als variabele.
Eh ja, natuurlijk. Waardoor komt dat nu? Er bestaat geen inputveld met de naam 'aantal' alleen maar met 'aantal1' en 'aantal2'. Dat zul je dus nog even moeten aanpassen net zoals de manier die je gebruikt bij het juist weergeven ervan zoals in een paar posts geleden besproken.