Hoi allemaal!

Ik ben nieuw hier. Maar ook nieuw met PHP. Ik moet het voor mijn opleiding leren, maar ik vind het echt zo moeilijk. Aangezien ik morgen een assessment heb en ik er niet uitkom, vraag ik jullie om hulp.

Ik moet een webwinkel maken en voor morgen moet ik de webwinkel + winkelwagen (werkend dus ;)) laten zien. De webwinkel zelf heb ik, maar de winkelwagen, daarin loop ik vast.

Ik weet dat er een tutorial staat op phphulp.nl, maar ik wil het graag volgens het boek doen en nu kan ik het waarschijnlijk allemaal nog wel halen met kopieren en zo, maar in de loop der tijd kan ik dat niet meer. Daarom wil ik het nu graag snappen.

Ik weet dat ik d.m.v. een session de bestelde artikelen in mijn winkelwagen moet krijgen, maar ik weet niet echt goed hoe. Ik weet dat deze code fout is, maar kan iemand me uitleggen hoe of wat?

<?php
session_start();
?>

<?php

$artikelnummer = $_POST["artikelnummer"];
$aantal = $_POST["hoeveelheid"];

echo '<h1>Inhoud winkelwagen</h1>

<table border="1">
<tr>
<td><strong>Wijn</strong></td>
<td><strong>Aantal</strong></td>
<td><strong>Prijs eenheid</strong></td>
<td><strong>Totaal</strong></td>
</tr>
<td>' . $_SESSION["winkelwagen"][$artikelnummer] = $aantal . '</td>
</table>';

echo '<a href="wijnwinkel.php">Verder winkelen</a> <a href="afrekenen.php">Afrekenen</a>';
?>
Let wel dat daar waar je $_SESSION gebruikt bovenaan in het script ook de sessie start.

Post anders eens wat je hebt, dan kunnen we aanschouwen wat je niet begrijpt.
Jij hebt in je eerste post dit in een echo staan. Dat werkt uiteraard niet zo.
<?php
echo '.....' . $_SESSION["winkelwagen"][$artikelnummer] = $aantal . '...';
?>
Dit zal hoogstens een 1 (true) neerzetten.
Nee, maar al stond die echo er niet, zou die nog niet werken. Het is iets wat ik heb overgetypt van dat "werkboek" wat we hebben, maar ik vind het handig als ik dat zou snappen zeg maar. Ik vind het nogal een vaag werkboek.

Ik heb de code gekregen van een klasgenootje. Ik hoop dat ik hem daarmee kan maken (zij had hem al wel voldoende af laten tekenen). Die ga ik nu helemaal analyseren en dan hoop ik dat hem toe kan passen in mijn eigen bestand.
Maar wat is nou concreet het probleem?
Dat ik niet weet hoe ik verder moet.

Ik krijg de opdracht:
Maak het formulier aan, waarin (het eerste deel van) de winkelwagen wordt getoond. Dat is:
- de kop Inhoud winkelwagen
- de tabel, met daarin de kop Wijn, aantal, Prijs eenheid en Totaal.
- het registreren van het bestelde in de sessievariabele 'winkelwagen'.
- de twee submitbuttons, die samen in één formulier zitten.

Met de functies:
$_SERVER[PHP_SELF];
$_SESSION
session_start()

Nou, van te voren kreeg ik wel een een voorbeeld van hoe het eruit moest komen te zien en wat het kon doen.

Maar niet van hoe ik iets moest doen. De kop, de tabel en de twee submitbuttons lukken ook wel. Alleen niet dat wanneer ik bij Wijn (met artikelnummer 1) 5 (die ik dus wil bestellen, invul, dat hij dan in mijn winkelwagen ook wijn (met artikelnummer 1) 5 bestellen komt te staan zeg maar.
Gewoon een tabel maken lukt toch wel.
Waar loop je dan vast?
En wat heb je tot nu?
Dat staat in post 1!

Een tabel maken lukt idd.

Maar ik krijg het niet voor elkaar dat wanneer ik bij wijn huppelepup 5 invoer en op bestellen klik, dat ik dan op de volgende pagina waar die dan heengaat (winkelwagen.php dus) dat er dan bij wijn huppelepup aantal 5 staat.
Laat het formulier eens zien.
In je eerste post is geen formulier.
Is die relevant nu? Het formulier staat op de webwinkel.php, niet in de winkelwagen.php.

Dit is dat formulier wat ik heb in webwinkel.php:

echo '<form name="bestellen" method="post" action="winkelwagen.php"><input name="artikelnummer" type="hidden" value="' . $artikelnummer . '"><td>' . $omschrijving . '</td><td>' . $soort . '</td><td>' . $land . '</td><td>' . $verpakking . '</td><td>' . $prijs . '/' . $eenheid . '</td><td>' . $resultaat . '<td><input name="hoeveelheid" size="3" value="1"><input type="submit" name="Submit" value="Bestellen"></form></td>' ;

Reageren