warenkorb mit session
christian
- php
hi, ich bin dabei einen warenkorb für einen Onlineshop zu programmieren. Mein fehler ist das er keinerlei Produkte angibt.
Die übermittlung des Produkt erfolgt durch fortlaufende ID'S die über file.php?id=X weitergegeben werden.
Als erstes starte ich die session
<?
session_start();
$ware_1 = $id;
session_register("ware");
?>
<html>
...
Dann soll er die waren der session auslesen und die waren aus der Session mit dennen aus der mysql vergleichen.
<?
include ("die_mysql_connect_file.php")
@mysql_connect($dbhost, $dbuser, $dbpass);
@$x = mysql_select_db($dbdata);
if (empty($x)) {
echo "Fehler beim Verbinden mit dem Datenbankserver<br>";
exit;
}
$sql = "SELECT * FROM shop_table where id=.$HTTP_SESSION_VARS('ware') ORDER BY id DESC";
$result = mysql_query($sql);
if ($result) {
while ($pc = mysql_fetch_array($result,MYSQL_ASSOC)) { ?>
Nun die Datenwiedergabe
<? echo $pc["daten"] ?>
Und schluss klammer
<? } ?>
Der fehler muss in dieser Zeile liegen
$sql = "SELECT * FROM shop_table where id=.$HTTP_SESSION_VARS('ware') ORDER BY id DESC";
es ist sicher ne kleinigkeit die ich übersehe
bin für hilfe Dankbar
Moin,
1. ich sehe nicht, wo du die variable ware hast, aber höchstwahrscheinlich bin ich blind.
2. muss es nicht HTTP_SESSION_VARS['ware'] heißen?
kloppt mich wenn ich falschlieg :)
Moin,
ich sehe nicht, wo du die variable ware hast, aber höchstwahrscheinlich bin ich blind.
muss es nicht HTTP_SESSION_VARS['ware'] heißen?
kloppt mich wenn ich falschlieg :)
$ware_1 = $id;
Da ist es definert :)
Ist ja eine fortlaufende Sache
Mit dem [ ] hast du recht ich hasse Klamern :)
Mit dem [ ] hast du recht ich hasse Klamern :)
Ich hasse Montage, da bin ich imemr blind und langsam :o)
Mit dem [ ] hast du recht ich hasse Klamern :)
Ich hasse Montage, da bin ich imemr blind und langsam :o)
Naja bisher liest er imemrnoch nicht aus *seufz*
bin mir ziemlich sicher das
$sql = "SELECT * FROM shop_hardware_pc where id=.$HTTP_SESSION_VARS['ware'] ORDER BY id DESC";
Der Fehler oder
<?
session_start();
$ware_1 = $id;
session_register("ware");
?>
ist.
Auf die Gefahr hin, meine Montags Theorie erneut zu untermauern.
die Variable ware, die du per session_register zur session variablen beförderst, sehe ich nicht, nur die variable ware_1.
hast du den quelltext vereinfacht zum lesen hier, ist da dein fehler, oder ist dieses posting eines meiner montags postings?
Auf die Gefahr hin, meine Montags Theorie erneut zu untermauern.
die Variable ware, die du per session_register zur session variablen beförderst, sehe ich nicht, nur die variable ware_1.
hast du den quelltext vereinfacht zum lesen hier, ist da dein fehler, oder ist dieses posting eines meiner montags postings?
Die variable $ware_1
speichert fortlaufend alle ID's. Das hab ich ausm script das ich für son chat ding gemacht hab einfachmal übernommen.
Wenn ich mich nicht ihre wird das doch so gemacht das ware_1 ;ware_2 oder wie auch imemr zu ware gehören
Oder ist das mein persönlicher Montags fehler :O
jedoch auch wenn ich das auf ware_1 änder in der speicherung+ausgabe kommt nix :(
Wenn ich mich nicht ihre wird das doch so gemacht das ware_1 ;ware_2 oder wie auch imemr zu ware gehören
ich fürchte, dafür bin ich zu wenig php'ler, meines wissens nicht, was aber nichts bedeutet ;-)
jedoch auch wenn ich das auf ware_1 änder in der speicherung+ausgabe kommt nix :(
ok, ich hab langsam wirklich das gefühl nichtmehr denken zu können.
wenn du recht hast, und ware_1, ware_2, etc gehört alles zu ware, müsste ware dann nicht ein array sein?
was sagt den <?php echo $_SESSION["ware"]; ?> dazu?
Phil, der sich merkwürdig leer im hirn fühlt, sich ärgert, das der feierabend, und damit das ende des montags noch weit entfernt ist, und deshalb jetzt erstmal eine rauchen geht, obwohl er doch eigentlich längst aufhören wollte.
was sagt den <?php echo $_SESSION["ware"]; ?> dazu?
---> da kommt 1 oder 2 oder 4 jenachdem was hinter ..php?id= steht :)
aber ich hab eben noch anderen fehler gefunden die definition also $ware= .id$ muss heissen $ware = "$id"
MONTAG RULT!!!!
MONTAG RULT!!!!
also funzt es jetzt? freut mich, das wenigstens du was hinkriegst, kaum will ich eine rauchen, klopft es, das telefon klingelt mehrfach etc... montag halt.. aber jetzt geh ich!! :D
MONTAG RULT!!!!
also funzt es jetzt?
hmm naja er muss das jetzt noch so machen das er mehre PRodukte nimmt was er nochncith macht *seufz*
Die ganze session geht irgendwie nicht richtig
Wie Stefan schon sagte, ein Shop is ein komplexes System und braucht viel vorbereitungs und plaungszeit, vielleicht machst du dir wirklich nochmal von grund auf gedanken, wie dein shop aufgebaut ist, wasfür attribute gibt es, wie stehen die in relation zueinander, und was für stati haben die aufträge, etc, etc...
auch wenn das planen eher lästig ist, geht das programmieren dafür nachher umso leichter ;)
Ich habe shcon komplette Planung fertig und das ganze ist nur eine ganz simple geshcichte vom Aufbau.
Ich wähle aus der Produktliste aus. Die ware landet im warenkorb usw. Wenn ich fertig bin sage ich bestellen und fülle hieraufgebent ein Formular aus oder,wenn ich grösserer Kunde bin, habe ich einen login bereich. Nach der bestellung erhält der besteller eine mail mit den überweisungsdaten usw.
FERTIG :)
---
Das ganze soll halt wirklich nur simple sein. wer sich ein Bild machen will -> http://www.rcom-it.de/hardware/monitore/index.php
Das ganze soll halt wirklich nur simple sein. wer sich ein Bild machen will -> http://www.rcom-it.de/hardware/monitore/index.php
ich nehm den schwarzen tft, was issn der forums preis? ;o)
ich nur coder ich nix zu sagen hab
Darauf hab ich keinen einfluss auch wenn ich admindaten hab :>
und der Wurm steckt in dieser Zeiele ich bin sicher -> $sql = "SELECT * FROM shop_hardware_pc where id=_SESSION['ware'] ORDER BY id DESC";
Hi,
aber ich hab eben noch anderen fehler gefunden die definition also $ware= .id$ muss heissen $ware = "$id"
kannst die "" auch weglassen ;)
Also: $ware = $id;
MONTAG RULT!!!!
Hör auf mit so Sprüchen ;o)
Andere Sache: Warum ist $ware ein Array?!
Ich versteh den Shop-Grundgedanken von dir nicht ;)
Ich habs so gemacht:
Ich hab mir ein Bestell-System gebaut.
Es gibt:
Bestellungen unterscheiden sich in solche mit und solche OHNE Bestellnummer. Solange eine Bestellung noch keine Bestellnummer hat, ist sie noch nicht abgeschickt / bestätigt worden.
Wenn nun ein Kunde eine neue Ware in seinen Warenkorb legt, wird diese als Pos. x in eine neue Bestellung geschrieben. Schickt er die Bestellung nicht ab, so wird diese nach 4 Wochen aus dem System gelöscht (via Cronjob). Solange bleibt sie als "offene Bestellung" für den Kunden einseh/änderbar/absendbar. Schickt er sie ab, wird eine Bestellnr. erzeugt. So kann der Kunde auch zum Beispiel eine Bestellung bis auf eine Position fertig machen und sie dann am nächsten Tag mit der letzten Position erweitern und abschicken.
Überleg mal, ob das nicht auch was für dich wäre ;)
Gruss
Stefan
So brauchst du nicht die ganzen Sachen in einer Session zu speichern.
Hi,
aber ich hab eben noch anderen fehler gefunden die definition also $ware= .id$ muss heissen $ware = "$id"
kannst die "" auch weglassen ;)
Also: $ware = $id;
Den Fehler hatte ich auch grad noch gefunden kurz bevor du es sagtest :)
Bei dem ganzen handelt sich nur um den Warenkorb. Also du hast eine Produktliste bzw. mehre seiten mit Produkten. Jeder Artikel hat eine Id. Diese wird an den "warenKorb"(woran ich grad verzweifle) übermittelt. dann wenn er fertig ist bestellt er und das wars :)