Hallo zusammen!
Ich arbeite jetzt schon seit einer Woche an einem Warenkorb-script mit Datenbankbasierten Login- und Registerbereich, welche auch alle funktionieren .
Nun hab ich ein Problem, ich muss diese Warenkorb Session sprich den ausgewählten Warenkorbinhalt in eine Datenbank speichern.
Tja und jetzt weis ich nicht mehr weiter , ich habe schon sämtliche Methoden aus verschieden Foren probiert aber irgendwie hakt es...
Ich hoffe mir kann jemand helfen bzw. einen Denkanstoss geben wie ich dieses Problem lösen könnte.
p.s. habe es mit session_set_save_handler()-Funktion auch probiert, aber verstehe es nicht ganz.....
Hier meine Warenkorb.php und Index.php
Indexx.php
Warenkorb
warenkorb.php
Ich arbeite jetzt schon seit einer Woche an einem Warenkorb-script mit Datenbankbasierten Login- und Registerbereich, welche auch alle funktionieren .
Nun hab ich ein Problem, ich muss diese Warenkorb Session sprich den ausgewählten Warenkorbinhalt in eine Datenbank speichern.
Tja und jetzt weis ich nicht mehr weiter , ich habe schon sämtliche Methoden aus verschieden Foren probiert aber irgendwie hakt es...
Ich hoffe mir kann jemand helfen bzw. einen Denkanstoss geben wie ich dieses Problem lösen könnte.
p.s. habe es mit session_set_save_handler()-Funktion auch probiert, aber verstehe es nicht ganz.....
Hier meine Warenkorb.php und Index.php
Indexx.php
PHP:
<?php require warenkorb.php'; ?>
<html>
<head>
</head>
<body>
<?php warenkorb(); ?>
<br /><br />
<?php produkte(); ?>
</body>
</html>
Warenkorb
warenkorb.php
PHP:
<?php
session_start();
$page = 'indexx.php';
mysql_connect ('localhost','root','') or die (mysql_error());
mysql_select_db('warenkorb') or die(mysql_error());
if (isset($_GET['add'])) {
$menge =mysql_query('SELECT id, menge FROM produkte WHERE id='.mysql_real_escape_string((int)$_GET['add']));
while ($menge_row = mysql_fetch_assoc($menge)) {
if ($menge_row['menge']!=$_SESSION['cart_'.(int)$_GET['add']]) {
$_SESSION['cart_'.(int)$_GET['add']]+='1';
}
}
header('Location: '.$page);
}
if (isset($_GET['remove'])) {
$_SESSION['cart_'.(int)$_GET['remove']]--;
header('Location: '.$page);
}
if (isset($_GET['delete'])) {
$_SESSION['cart_'.(int)$_GET['delete']]='0';
header('Location: '.$page);
}
echo "<h3>Artikel im Einkaufswagen</h3>";
function produkte () {
echo "<h3>Vorhandene Artikel</h3>";
$get = mysql_query('SELECT id, name, beschreibung, preis FROM produkte WHERE menge > 0 ORDER BY id DESC');
if (mysql_num_rows($get)==0) {
echo "Keine Artikel vorhanden!";
}
else {
while ($get_row = mysql_fetch_assoc($get)) {
echo '<p>'.$get_row['name'].'<br />'.$get_row['beschreibung'].'<br />€'.number_format($get_row['preis'], 2).' <a href="warenkorb.php?add='.$get_row['id'].'">Add</a></p>';
}
}
}
function warenkorb() {
foreach($_SESSION as $name => $value) {
if ($value>0) {
if (substr($name, 0, 5)=='cart_') {
$id = substr($name, 5, (strlen($name)-5));
$get = mysql_query('SELECT id, name, preis FROM produkte WHERE id='.mysql_real_escape_string((int)$id));
while ($get_row = mysql_fetch_assoc($get)) {
$sub = $get_row['preis']*$value;
echo $get_row['name'].' x '.$value.' für €'.number_format($get_row['preis'], 2).' = € '.number_format($sub, 2).' <a href="warenkorb.php?remove='.$id.'">[-]</a> <a href="warenkorb.php?add='.$id.'">[+]</a> <a href="warenkorb.php?delete='.$id.'">[Löschen]</a><br />';
}
}
$total += $sub;
}
}
if ($total==0) {
echo "Ihr Warenkorb ist leer.";
}
else {
echo '<p>Gesamt: €'.number_format($total, 2).'</p>';
echo "<h5><a href='bestellung.php'>Bestellung abschließen</a> </h5>";
}
}
?>
Zuletzt bearbeitet: