Slayer8 Geschrieben 23. August 2002 Teilen Geschrieben 23. August 2002 Ich habe eine Frage zu einem PHP-Projekt (Online-Shop). Eine Bestellung soll in einer Datenbank gespeichert werden. Ich muß allerdings z.B. Alle Artikel und die Anzahl jedes Artikel in der Datenbank speichern. Für die Bestelllung habe ich jetzt eine Tabelle angelegt, aber wie kann ich nun die Artikel in die Datenbank speichern? Im Prinzip kann ich in jedem Feld doch nur ein Wert speichern, und nicht mehrere (z.B. mehrere Artikel). Im Prinzip müßte ich in dem Feld also einen (dynamischen?) Array speichern ?!? Kann ich so einen Array so einfach speichern und/oder damit arbeiten? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Art Geschrieben 23. August 2002 Teilen Geschrieben 23. August 2002 hm, ich denke das ist entgegen jeder normalform. für jeden artikel sollte es einen eintrag geben. ich denke mir das so: artikel_id, kunden_id, anzahl_artikel usw. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
phreak Geschrieben 23. August 2002 Teilen Geschrieben 23. August 2002 das ist eine klassische n zu m (oder war das m zu n?) relation die du da per datenbank abbilden musst. hierfür brauchst du eine weitere tabelle. du hast also eine kundentabelle, eine produkttabelle und eine shoppingtabelle die so aussieht, wie Art das schon beschrieben hat, und dann für jede in den warenkorb gelegte kunden/produkt-kombination einen datensatz enthält. wenn also ein kunde 5 verschiedene produkte bestellt, hast du für diese bestellung in der shoppingtabelle 5 einträge. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Wolle Geschrieben 23. August 2002 Teilen Geschrieben 23. August 2002 Original geschrieben von phreak und dann für jede in den warenkorb gelegte kunden/produkt-kombination einen datensatz enthält. Nicht ganz... Ich würde zusätzlich zu Produkt und Kundentabelle eine Tabelle Warenkorb machen mit Kundennummer und Warenkorb/Rechnungsnr. Dazu dann eine Tabelle Position mit Positionsnr, Warenkorb/Rechnungsnr., Artikelnr und Anzahl. Wenn du Kunden- und Artikelinformationen in eine Tabelle packen würdest, hättest du Redundanz drin, da ja mehrere Artikel zu einem Kunden gehören können. Ich schiebs mal zu den Datenbanken rüber, geht wohl eher in die Richtung.... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Slayer8 Geschrieben 24. August 2002 Autor Teilen Geschrieben 24. August 2002 Ich habe eine Tabelle für Artikel und eine für Kunden. Außerdem habe ich eine extra Tabelle für die Bestellung in der dann der Kunde (sofern er registriert ist) festgehalten wird und der Artikel! Ahhhhh.... JETZT, verstehe ich ! Klar, eine Extra Tabelle, in der nochmal Das Produkt, der Preis und Anzahl des Produktes stehen und in der Bestell-Tabelle einen Foreign Key?!? ThX!!! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Art Geschrieben 24. August 2002 Teilen Geschrieben 24. August 2002 ne nicht das produkt sondern nur das produkt_id und auch nicht den preis, denn den hast du doch schon in der produkt tabelle und über produkt_id und anzahl kannste jederzeit den preis ermitteln. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jaraz Geschrieben 24. August 2002 Teilen Geschrieben 24. August 2002 Original geschrieben von Art auch nicht den preis, denn den hast du doch schon in der produkt tabelle und über produkt_id und anzahl kannste jederzeit den preis ermitteln. Da sich Preise allerdings ändern, würde ich den Preis schon mit abspeichern. Ansonsten muss er ne Historie mit verwalten, wann sich welcher Preis geändert hat. Gruß Jaraz Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Art Geschrieben 24. August 2002 Teilen Geschrieben 24. August 2002 aber preissenkungen werden dann doch hoffentlich an den kunden weitergegeben, im gegensatz zu erhöhungen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.