Heeft iemand een ( gratis) bestel/ aanvraag script?
mag met MySQL


alvast bedankt
Google is youre best friend.. zal ik maar zeggen :-)
ja ik weet het, maar ik kon niet echt iets goed vinden :)
Heeft iemand nog een bestel scriptje liggen?
ik wil wel wat voor je in elkaar zetten mich, maar dan moet je me wel even vertellen wat voor soort formulier dit moet zijn.

moeten de mensen zelf producten/aanvragen invullen of moeten ze de keuze hebben uit een aantal dingen?

moet het opgeslagen worden in een mysql tabel of moet het ge-emaild worden, of misschien wel beide

enz.
miss is het een beetje te veel gevraagd maar ze moeten dus kunnen uit en aantal producten kunnen kiezen en elkekeer dat ze dat doen dat de prijs die onderaan de pagina staat word geupdated.

als ze op submit drukken krijgen ze de bestel lijst te zien.

tegelijker tijd wil ik een mailtje krijgen met die bestel lijst zodat ik weet wat er besteld ik, met adres gegevens e.d. van de klant.

Heel erg bedankt dat je dat ( eventueel) voor me kan maken.
@mich, over hooguit een uurtje heb ik dit wel in elkaar gezet, heb nog wat andere dingetjes te doen ook, anders had ik het sneller.

EDIT: ik ga er wel vanuit dat je zelf de layout/design doet.

EDIT: mich, hebben de producten een prijs die weergegeven moet worden of niet?
goed ok, ik heb wat in elkaar gezet voor je, ik hoop dat je er wat mee kan, en zoals ik al zei moet je zelf het design doen e.d.

Tevens moet je in config.php nog wat dingen aanpassen.

Ook heb ik er alreeds voor gezorgd dat de bestellingen ook worden opgeslagen in de db zodat je hier eventueel in een later stadium ook wat aan hebt, want het is gewoon de realiteit dat het in een database in combinatie met een cms gemakkelijker is om bestellingen te verwerken dan per e-mail. dus dan hoef je dat later eventueel niet meer te doen.

config.php
<?php
mysql_connect("localhost","jegebruikersnaam","jewachtwoord");
mysql_select_db("jedatabase");

//vul hier de naam van de website in, en tevens ook het e-mailadres waar de bestelbevestigingen mee verstuurd moeten worden
$from	= "Websitenaam <[email protected]>";

//vul hier het e-mail adres in waar de bestellingen naartoe gestuurd moeten worden
$emailbestellingen	= "";
?>


producten.php
<?php
include('config.php');

if ($_SERVER['REQUEST_METHOD'] == "POST")
{
extract($_POST); //alle velden ophalen
	$query2		= "INSERT INTO 
				winkelwagen
				(productID,
				aantal,
				ip)
				VALUES
				('".$productID."',
				'".$aantal."',
				'".$_SERVER['REMOTE_ADDR']."')";
	$result2	= mysql_query($query2) or die (mysql_error());
header("Location: producten.php");
}
else
{
	$query1		= "SELECT * FROM producten";
	$result1	= mysql_query($query1) or die (mysql_error());
	
	$breedte	= 100;
	
	echo('<table>');
	echo('<tr>
		<th align="left" width="'.$breedte.'">Naam</th>
		<th align="left" width="'.$breedte.'">Prijs</th>
		</tr>');
	while ($row1 = mysql_fetch_array($result1))
	{
		echo('<form action="'.$_SERVER['PHP_SELF'].'" method="post">');
		echo('<tr>
			<td width="'.$breedte.'">'.$row1['naam'].'</td>
			<td width="'.$breedte.'">'.number_format($row1['prijs'],2,',','.').'</td>
			<td width="'.$breedte.'"><input type="text" name="aantal" id="aantal" size="3"><input type="hidden" name="productID" id="productID" value="'.$row1['id'].'"></td>
			<td width="'.$breedte.'"><input type="submit" name="submit" id="submit" value="In Winkelwagen"></td>
			</tr>');
		echo('</form>');
	}
	echo('</table>');
}
?>


winkelwagen.php
<?php
include('config.php');

$query1		= "SELECT * FROM winkelwagen WHERE ip ='".$_SERVER['REMOTE_ADDR']."'";
$result1	= mysql_query($query1) or die (mysql_error());

//als er producten in het winkelwagentje zitten, dan weergeven
if (mysql_num_rows($result1))
{

$breedte = 100;

	echo('<table>');
	echo('<tr>
		<th align="left" width="'.$breedte.'">Naam</th>
		<th align="left" width="'.$breedte.'">Aantal</th>
		<th align="left" width="'.$breedte.'">Prijs</th>
		<th align="left" width="'.$breedte.'">Subtotaal</th>
		</tr>');
	while ($row1 = mysql_fetch_array($result1))
	{
	//naam en prijs van producten ophalen
	$query2		= "SELECT naam,prijs FROM producten WHERE id = ".$row1['productID'];
	$result2	= mysql_query($query2) or die (mysql_error());
	$row2		= mysql_fetch_array($result2);
	
	echo('<tr>
		<td width="'.$breedte.'">'.$row2['naam'].'</td>
		<td width="'.$breedte.'">'.$row1['aantal'].'</td>
		<td width="'.$breedte.'">'.number_format($row2['prijs'],2,',','.').'</td>
		<td width="'.$breedte.'">'.number_format($row1['aantal'] * $row2['prijs'],2,',','.').'</td>
		</tr>');
	
	$totaalprijs += $row1['aantal'] * $row2['prijs'];
	}
	echo('<tr><td colspan="4" width="'.$breedte.'">&nbsp;</td>');
	echo('<tr>
		<td colspan="2" width="'.$breedte.'"></td>
		<td width="'.$breedte.'"><b>Totaal</b></td>
		<td width="'.$breedte.'"><b>&euro; '.number_format($totaalprijs,2,',','.').'</b><td>
		</tr>');
	echo('</table>');
	
	echo('<a href="bestellen.php">Bestel</a>');
}
else //als er geen producten in het winkelwagentje zitten, dan een melding geven
{
	echo('Er zitten nog geen producten in uw winkelwagentje');
}
?>


bestellen.php
<?php
include('config.php');

if ($_SERVER['REQUEST_METHOD'] == "POST") //als er op submit gedrukt is
{
	extract($_POST); //alle velden ophalen

	$query1			= "INSERT INTO 
					bestellingen
					(naam,
					adres,
					postcode,
					plaats,
					email,
					datum)
					VALUES
					('".$naam."',
					'".$adres."',
					'".$postcode."',
					'".$plaats."',
					'".$email."',
					'".date("Y-m-d H:i:s")."')";
	$result1		= mysql_query($query1) or die (mysql_error());
	$bestellingsID	= mysql_insert_id();
	
	$query2			= "SELECT * FROM winkelwagen WHERE ip = '".$_SERVER['REMOTE_ADDR']."'";
	$result2		= mysql_query($query2) or die (mysql_error());
	
	while ($row2 = mysql_fetch_array($result2))
	{
	$query3			= "INSERT INTO 
					besteldeproducten
					(bestellingsID,
					productID,
					aantal)
					VALUES
					('".$bestellingsID."',
					'".$row2['productID']."',
					'".$row2['aantal']."')";
	$result3		= mysql_query($query3) or die (mysql_error());
	}
	
	//e-mail bericht opstellen
	$bericht 		= "Geachte ".$naam.",\n\n";
	$bericht		.= "Hieronder ziet u een overzicht van uw bestelling\n\n";
	$bericht		.= "Uw bestelling wordt naar het volgende adres gestuurd\n";
	$bericht		.= $naam."\n";
	$bericht		.= $adres."\n";
	$bericht		.= $postcode." ".$plaats."\n\n";
	
	$query4			= "SELECT * FROM bestellingen WHERE id=".$bestellingsID;
	$result4		= mysql_query($query4) or die (mysql_error());
	$row4			= mysql_fetch_array($result4);

	$query5			= "SELECT productID,aantal FROM besteldeproducten WHERE bestellingsID = ".$bestellingsID;
	$result5		= mysql_query($query5) or die (mysql_error());
	
	while ($row5 = mysql_fetch_array($result5))
	{	
	$query6			= "SELECT naam,prijs FROM producten WHERE id=".$row5['productID'];
	$result6		= mysql_query($query6) or die (mysql_error());
	$row6			= mysql_fetch_array($result6);
		
	$bericht 		.= "Product: ".$row6['naam']."\n";
	$bericht		.= "Prijs: ".number_format($row6['prijs'],2,',','.')."\n";
	$bericht		.= "Aantal: ".$row5['aantal']."\n";
	$bericht		.= "Subtotaal: ".number_format($row6['prijs'] * $row5['aantal'],2,',','.')."\n\n";
	$totaalprijs	+= $row6['prijs'] * $row5['aantal'];
	}
	$bericht		.= "Totaal: € ".number_format($totaalprijs,2,',','.');

	//e-mail bericht opstellen
	$bericht2 		= "Er is een bestelling geplaatst door de klant ".$naam.",\n\n";
	$bericht2		.= "Hieronder ziet u een overzicht van zijn bestelling\n\n";
	$bericht2		.= "Het adres van deze klant is\n";
	$bericht2		.= $naam."\n";
	$bericht2		.= $adres."\n";
	$bericht2		.= $postcode." ".$plaats."\n\n";
	
	$query7			= "SELECT * FROM bestellingen WHERE id=".$bestellingsID;
	$result7		= mysql_query($query7) or die (mysql_error());
	$row7			= mysql_fetch_array($result7);

	$query8			= "SELECT productID,aantal FROM besteldeproducten WHERE bestellingsID = ".$bestellingsID;
	$result8		= mysql_query($query8) or die (mysql_error());
	
	while ($row8 = mysql_fetch_array($result8))
	{	
	$query9			= "SELECT naam,prijs FROM producten WHERE id=".$row8['productID'];
	$result9		= mysql_query($query9) or die (mysql_error());
	$row9			= mysql_fetch_array($result9);
		
	$bericht2 		.= "Product: ".$row9['naam']."\n";
	$bericht2		.= "Prijs: ".number_format($row9['prijs'],2,',','.')."\n";
	$bericht2		.= "Aantal: ".$row8['aantal']."\n";
	$bericht2		.= "Subtotaal: ".number_format($row9['prijs'] * $row8['aantal'],2,',','.')."\n\n";
	$totaalprijs2	+= $row9['prijs'] * $row8['aantal'];
	}
	$bericht2		.= "Totaal: € ".number_format($totaalprijs2,2,',','.');

	$headers		= "FROM: ".$from;
	
	//e-mail versturen	
	mail($email,'Uw Bestelling',$bericht,$headers);
	
	mail($emailbestellingen,'Bestelling',$bericht2,$headers);
	
	//winkelwagen leegmaken
	$query10		= "DELETE FROM winkelwagen WHERE ip = '".$_SERVER['REMOTE_ADDR']."'";
	$result10		= mysql_query($query10) or die (mysql_error());
	
	echo('Uw bestelling is geplaatst, u heeft hiervan een bevesting per e-mail ontvangen');

}
else //zolang dat nog niet gedaan is, formulier weergeven
{
	?>
	<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
	<table>
	<tr>
		<td>Naam</td>
		<td><input type="text" name="naam" id="naam"></td>
	</tr>
	<tr>
		<td>E-mail</td>
		<td><input type="text" name="email" id="email"></td>
	</tr>
	<tr>
		<td>Adres</td>
		<td><input type="text" name="adres" id="adres"></td>
	</tr>
	<tr>
		<td>Postcode</td>
		<td><input type="text" name="postcode" id="postcode"></td>
	</tr>
	<tr>
		<td>Plaats</td>
		<td><input type="text" name="plaats" id="plaats"></td>
	</tr>
	<tr>
		<td>&nbsp;</td>
		<td><input type="submit" name="submit" id="submit" value="Bestellen"></td>
	</tr>
	</table>
	</form>
<?php
}
?>


en de tabellen
-- 
-- Tabel structuur voor tabel `besteldeproducten`
-- 

CREATE TABLE `besteldeproducten` (
  `id` int(11) NOT NULL auto_increment,
  `bestellingsID` int(11) NOT NULL default '0',
  `productID` int(11) NOT NULL default '0',
  `aantal` int(11) NOT NULL default '0',
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

-- 
-- Tabel structuur voor tabel `bestellingen`
-- 

CREATE TABLE `bestellingen` (
  `id` int(11) NOT NULL auto_increment,
  `naam` varchar(255) NOT NULL default '',
  `adres` varchar(255) NOT NULL default '',
  `postcode` varchar(10) NOT NULL default '',
  `plaats` varchar(255) NOT NULL default '',
  `email` varchar(255) NOT NULL default '',
  `datum` datetime NOT NULL default '0000-00-00 00:00:00',
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

-- 
-- Tabel structuur voor tabel `producten`
-- 

CREATE TABLE `producten` (
  `id` int(11) NOT NULL auto_increment,
  `naam` varchar(255) NOT NULL default '',
  `beschrijving` text NOT NULL,
  `prijs` decimal(10,2) NOT NULL default '0.00',
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

-- 
-- Tabel structuur voor tabel `winkelwagen`
-- 

CREATE TABLE `winkelwagen` (
  `id` int(11) NOT NULL auto_increment,
  `productID` int(11) NOT NULL default '0',
  `aantal` int(11) NOT NULL default '0',
  `ip` varchar(25) NOT NULL default '',
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Vette shit, egt heel erg bedankt, natuurlijk doe ik de style e.d.
maar euh... waar zet ik mijn producten precies in ( ik ben zoooooo'n n00b)
oh ja, dat heb ik inderdaad niet gemaakt, maar als je phpmyadmin hebt, kun je ze ook daarin aanmaken.

knop toevoegen van de tabel producten.

maar ik zal anders wel even een scriptje voor je maken, even geduld.

Reageren