Wij willen een makkelijk winkelwagentje maken in php/mysql voor school, maar het lukt totaal niet.

Kunnen jullie ff kijken? Bedankt...


<?php
error_reporting(E_ALL);
session_start();
?>
<html> 
	<html>
  	<head>
   		<title>Ere-Die-Voetbal</title>
   		<link rel="stylesheet" type="text/css" href="stylesheet.css">
  	</head>
<body> 
<div id="border">
    <div id="navcontainer"> 
     <ul id="navlist"> 
       <li id="active"><a href="voetbalsite.php" id="current">Onze Producten</a></li>
       <li><a href=".html">Voetbalnieuwtjes</a></li> 
       <li><a href=".html">Het hoe en wat van de Site</a></li> 
       <li><a href=".html">Links naar andere Sites</a></li> 
     </ul> 
    </div> 
<a href="index.php"><div id="header"></div></a>
<center>
<h1>Producten</h1>
<?php
$connection = mysql_connect("localhost", "root", "")
	or die ("Couldn't connect to server");
$db = mysql_select_db("voetbal", $connection)
	or die ("Couldn't connect to server");
//Om de verschillende categorieen te krijgen, gebruik "SELECT DISTINCT categorie FROM product"


/* 
** CATEGORY
*/
$query = "SELECT * FROM product";

// Selecteer de waarde uit het formulier
if(isset($_POST['cat']) && $_POST['cat'] != "NULL"){
	$query = "SELECT * FROM product WHERE categorie='".$_POST['cat']."'";
	$_SESSION['selectedCat'] = $_POST['cat'];

// Selecteer de waarde uit de sessie
}elseif(isset($_SESSION['selectedCat']) && !isset($_POST['cat'])){
	$query = "SELECT * FROM product WHERE categorie='".$_SESSION['selectedCat']."'";

// Selecteer alles
}else{
	$_SESSION['selectedCat'] = 'NULL';
}

/*
** SPELERSNAAM
*/

// Selecteer de waarde uit het formulier
if(isset($_POST['naam']) && $_POST['naam'] != "NULL"){
	$query = "SELECT * FROM product WHERE productID LIKE '%".$_POST['naam']."%'";
	$_SESSION['selectedProduct'] = $_POST['naam'];

// Selecteer de waarde uit de sessie
}elseif(isset($_SESSION['selectedProduct']) && !isset($_POST['naam'])){
	$query = "SELECT * FROM product WHERE productID LIKE '%".$_SESSION['selectedProduct']."%'";

// Selecteer alles
}else{
	$_SESSION['selectedProduct'] = 'NULL';
}


$resultLijst = mysql_query($query)
	or die("Query failed: ".mysql_error());
	

// Formulier een
echo '<form id="formOne" name="formOne" action="'.$_SERVER['PHP_SELF'].'" method="post">'."\r\n";
echo "<h4>Type product:</h4>\r\n"; 
echo '<select name="cat">'."\r\n";
echo '<option value="NULL">Maak een keuze</option>\r\n';

$query = "SELECT DISTINCT categorie FROM product";
$result = mysql_query($query)
	or die("Query failed: ".mysql_error());

while ($row = mysql_fetch_array($result)) {
	if(isset($_SESSION['selectedCat']) && $_SESSION['selectedCat'] == $row['categorie']){
		$selected = " selected";
	}else{
		$selected = "";
	}
	
	echo "<option value=".$row['categorie']." ".$selected.">".$row['categorie']."</option>\r\n";
}

echo "</select>\r\n"; 
echo "<input type='submit' name='submit' value='Verstuur'>";
echo "</form>";

// Formulier twee
if(isset($_SESSION['selectedCat']) && $_SESSION['selectedCat'] != "NULL"){
	echo '<form action="'.$_SERVER['PHP_SELF'].'" method="post">';
	echo "<h4>Naam van de Speler / Team:</h4>"; 
	echo '<select name="naam">';
	echo '<option value="NULL">Maak een keuze</option>';
	
	$query = "SELECT ProductID, naam FROM product WHERE categorie = '".$_SESSION['selectedCat']."';";
	$result = mysql_query($query)
		or die("Query failed: ".mysql_error());
	
	while ($row = mysql_fetch_array($result)) {
		if(isset($_SESSION['selectedProduct']) && $_SESSION['selectedProduct'] == $row['ProductID']){
			$selected = " selected";
		}else{
			$selected = "";
		}
		echo "<option value=".$row['ProductID']." ".$selected.">".$row['naam']."</option>\r\n";
	}
	
	
	echo "</select>"; 
	echo "<input type='submit' name='submit' value='Verstuur'>";
	echo "</form>";
}

//Bestellen

/*if(isset($_POST['verstuur'])){
		echo 'Naam: '.$_POST['naam'].'<br>
			 Bestelde Zwaard: '.$_POST['zwaard'].'<br>
			 Aantal: '.$_POST['aantal'];
	}
*/
// Print de resultaten
echo "<TABLE BORDER='2'>";
echo "<TR>";
echo "<TH>Naam</TH><TH>Omschrijving</TH><TH>Categorie</TH>";
echo "</TR>";

while ($row = mysql_fetch_array($resultLijst))
{
	echo "<TR>";
	echo "<TD>", $row['naam'], "</TD><TD>", $row['beschrijving'], "</TD><TD>", $row['categorie'],"</TD>";
	echo "</TR>";
}

echo "</TABLE></center>";

mysql_close($connection);
?>
<a href="bestellen.php?bestellen=1">Bestel SNEL!</a>
<div id="content"></div>
<div id="Eindmarkering">-== Deze Site is gemaakt door Tim Stork & Severijn Heijmans ==-</div>
</div>
</body>
</html>


****Volgende bestandje bestellen.php****


<?php
error_reporting(E_ALL);
session_start();
?>
<html> 
	<html>
  	<head>
   		<title>Ere-Die-Voetbal / Bestellen</title>
   		<link rel="stylesheet" type="text/css" href="stylesheet.css">
  	</head>
<body> 
<div id="border">
    <div id="navcontainer"> 
     <ul id="navlist"> 
       <li id="active"><a href="voetbalsite.php" id="current">Onze Producten</a></li>
       <li><a href=".html">Voetbalnieuwtjes</a></li> 
       <li><a href=".html">Het hoe en wat van de Site</a></li> 
       <li><a href=".html">Links naar andere Sites</a></li> 
     </ul> 
    </div> 
<a href="index.php"><div id="header"></div></a>
<div id="content">

<?php
		$connection = mysql_connect("localhost", "root", "");
		$db = mysql_select_db("voetbal", $connection)
		or die ("Couldn't connect to server");
		$_SESSION['mijnWagentje'] = array();
		
		if(isset($_GET['bestellen']) && $_GET['bestellen'] == 1 ){
			$_SESSION['mijnWagentje'][] = $_SESSION['selectedProduct'];
		}
		if(isset($_GET['bestellen'])){
			echo "<a href=\"bestellen.php\">";
			echo "Opslaan in winkelwagentje!";
			echo "</a>";
		}
		
		foreach($_SESSION['mijnWagentje'] as $wagen){
			
		}
		
		echo "Type Product: ".$_SESSION['selectedCat']; 
		echo "<br>";
		echo "Naam Product: "; 
	
		$query = "SELECT * FROM product WHERE productID=".$_SESSION['selectedProduct'];
		$result = mysql_query($query)
		or die("Query failed: ".mysql_error());
		
		while ($row = mysql_fetch_array($result)) {
		if(isset($_SESSION['selectedProduct']) && $_SESSION['selectedProduct'] == $row['ProductID']){
			$selected = " selected";
		}else{
			$selected = "";
		}
		echo "->".$row['naam']."\r\n";
		}
		
		mysql_close($connection);
?>

</div>
<div id="Eindmarkering">-== Deze Site is gemaakt door Tim Stork & Severijn Heijmans ==-</div>
</body>
</html>


Als dit een een onderdeel is hoor je er toch goed onderwezen in te worden. Het zou raar zijn als ik geen regels zoukrijgen als ik een schip mag besturen...
@tim

we zijn niet de php helpdesk, wij zijn ook gewoon mensen die andere dingen doen hierbuiten. Als iemand een vraag heeft helpen we die graag. Als iemand een vraag heeft over een stuk script waar hij niet uitkomt helpen we daarmee. Als iemand een idee heeft hoe iets moet maar er in vastzit helpen we daarmee.

Als iemand niets heeft, voor huiswerk dit moet doen, geen kennis heeft en dat niet wil hebben, en zon taal opzet. passen wij
Hey,

Daar ben ik weer. Even voor iedereen die met hetzelfde probleem zat als ik kijk even hiernaar en dat kan misschien helpen. Het heeft mij nog niet geholpen maar dat komt omdat ik er nog niet mee ben begonnen. Maar het ziet er veel belovend uit...

http://www.phpwebcommerce.com/shop-add-to-cart.php
Toch nog even een reactie op die van jullie wat mijn bloed kookt als ik dat lees. Geen kennis, mij best, maar onthoud wel dat ik er nu een maand mee bezig ben.
En we begonnen heel netjes, maar je zou kunnen begrijpen dat ik er niet tegen kan als mensen mij neerzetten als een niet leergierig mens.

Ik doe m'n best en meer kan ik niet doen... Ik lipe vast... Zag phphulp.nl.... Klikte erop... En de rest weten jullie wel.
Ik schoot uit me slof omdat ik jullie gerig vond met uitleggen.

Mijn excuses hiervoor.

Dat meen ik.

Groeten.
Wat je vraagt is niet mogelijk: een beginnetje maken.

Een beginnetje is dat je zelf bekijkt: hoe ga ik dat nou in elkaar zetten? Dit doe je bijvoorbeeld op papier in het Nederlands.

Dan kijk je wat er op welk moment moet gebeuren en welke informatie en data daarbij worden opgeslagen, nodig is (vanuit bv database) en op welke manier deze het best verwerkt kan worden.

Dan ga je kijken hoe je het best verschillende handelingen samen kan laten lopen en hoe je dit indeelt.

Tot slot ga je alles programmeren en testen en bekijk je of dingen beter kunnen.

Als je vastloopt; vertel ons in welke fase, wat er niet lukt en wat je al hebt gedaan of geprobeerd.

Wat kunnen we nu concreet voor je doen?
Arjan Kapteijn schreef op 21.03.2006 15:51
Ik denk, of eerlijk gezegd hoop, dat er hier mensen zijn die dat kunnen bevestigen.


Ik bevestig dit.
Om je opweg te helpen heb ik eventjes snel iets uit mijn hoofd getikt. Gemaakt in 4 en een halve minuut dus er kunnen wat foutjes inzitten, maar ik denk dat het redelijk werkt...

<?php
if (isset($_SESSION['winkelwagentje']))
{
$mandje = array();
$_SESSION['winkelwagentje'] = $mandje;
}else{
$mandje = $_SESSION['winkelwagentje'];
}

if(isset($_GET['actie']))
{
$actie = $_GET['actie'];
$acties = array('toevoegen','verwijderen');

if(in_array($actie,$acties))
{
if(isset($_GET['productid']))
{
if(is_numeric($_GET['productid']))
{
$productid = $_GET['productid'];
switch($actie)
{
case 'toevoegen':
if(in_array($productid,$mandje))
{
echo 'Sorry, dit product is al toegevoegd!';
}else{
$mandje[] = $productid;
$_SESSION['winkelwagentje'] = $mandje;
}
break;
case 'verwijderen':
if(in_array($productid,$mandje))
{
$productkey = array_search($productid, $mandje);

if($productkey !== false)
{
array_splice($mandje, $productkey, 1);
echo 'Het product is verwijderd!';
}
}else{
echo 'Sorry, ik kan niet iets verwijderen wat niet bestaat!';
}
break;
}
}else{
echo 'Sorry, ik verwacht op zijn minst een numerieke waarde!';
}
}else{
echo 'Sorry, ik verwacht op zijn minst een productid!';
}
}else{
echo 'Sorry, de actie is niet toegestaan!';
}
}
?>
Arjan je bent te goed voor deze wereld :-)
Ja ach.. wedstrijdje met mijzelf... Je kijkt op de klok, ziet dat je nog 4,5 minuut hebt tot 18:45 en gaat aan de slag :+.

Bedankt Arjan. En jullie hebben allemaal ook wel gelijk. Ik ga nu jouw ding gebruiken Arjan. Ik heb echter zelf nog wat geprobeerd (duurde geen 4.5 minuut maar ongeveer 1.5 uur hahahaha) en liep tegen het volgende aan.

Type Product: Kaart
Naam Product: ->Klaas Jan Huntelaar
Fatal error: Cannot redeclare addtocart() (previously declared in c:\documents and settings\tim stork\mijn documenten\School\Techniek\www\library\cart-functions.php:11) in c:\documents and settings\tim stork\mijn documenten\School\Techniek\www\library\cart-functions.php on line 285

Wat betekent dit?

Reageren