Veröffentlicht 9. September 200915 j Guten Tag allerseits, Ich möchte über php in mysql Tabellen verknüpfen bzw. verbinden. Das heißt konkret: Ich habe 2 Tabellen namens: - pizza und - bestellungen So in der Tabelle "pizza" ist ein Datensatz und der der ID. In der Tabelle "bestellungen" sind mehrere Datensätze nämlich "pizzagroesse" und "preis" plus der ID. Jetzt lege ich eine dritte Tabelle namens "zwischentabelle" an. In dieser Tabelle möchte ich die ID´s zusammenfassen also konkret: In der zwischentabelle soll stehen: ID der pizza ID des preises ID der pizzagroesse Diese ID´s sollen nicht gleich sein d.h. es soll nicht 2 mal die ID 345 vorkommen z.B. Ich möchte dies mit php umsetzten. Habe folgendes versucht was nicht geht: $idpizza = "SELECT id FROM pizza"; $result = "INSERT INTO zwischentabelle (pizza, groesse, preis) VALUES ('$idpizza')"; $eintragresult = mysql_query($result); [/PHP] Bei [PHP]$idpizza = "SELECT id FROM pizza"; bin ich mir ziemlich sicher das das richtig ist oO?! Wie ich die ID´s der groesse und des preises auslese weiß ich leider nicht hoffe da auf Hilfe... Lieben Gruß und Danke an alle Antworteten. PS: Bitte keine verweise auf irgendwelche Tutorials, habe mir schon genügend durchgelesen..... bei Google ist dein Freund - habe ihc mich auch schon informiert komme aber zu keinem ergebnis. Gruß
9. September 200915 j Habe folgendes versucht was nicht gehtWas bedeutet "geht nicht"? Hast du das hier schon gelesen? $result = "INSERT INTO zwischentabelle (pizza, groesse, preis) VALUES ('$idpizza')"; [/PHP]Kann nicht funktionieren, da die Anzahl der tatsäch übergebenen Argumente (1) ungleich der Anzahl der definierte Argumente (3) ist.
9. September 200915 j wie soll denn damit irgendwas aus ner DB ausgelesen werden? $idpizza = "SELECT id FROM pizza"; [/php] und wie soll das hier zusammenpassen? [php] $result = "INSERT INTO zwischentabelle (pizza, groesse, preis) VALUES ('$idpizza')"; Wenn dann etwa so: $result = "INSERT INTO zwischentabelle (pizza, groesse, preis) VALUES ('$idpizza', '$idgroesse', '$idpreis')"; [/php] Dennoch kann das nicht haun weil wo kommen die Daten her für groesse, preis und pizza? Wie sehn die Tabellen denn genau aus? Wie schaut dein Script genau aus etc, sowas würde es sehr vereinfachen dir zu helfen, mit einem Select und einem Insert wird dir kaum jemand helfen können Bearbeitet 9. September 200915 j von Saerdna
10. September 200915 j In der zwischentabelle soll stehen: ID der pizza ID des preises ID der pizzagroesse Es ist nicht sinnvoll den Preis als ID abzulegen, sondern den Nettopreis + MwSt abzuspeichern, denn bei einer Änderung der Tabelle der Preise wären alte Bestellungen somit falsch, ebenso wie eine Änderung der MwSt. PS: Bitte keine verweise auf irgendwelche Tutorials, habe mir schon genügend durchgelesen..... bei Google ist dein Freund - habe ihc mich auch schon informiert komme aber zu keinem ergebnis. Anscheinend hast Du Dich nicht ausreichend Informiert, denn einerseits lassen die gezeigten Statements SQL-Injections zu, weiterhin scheinen Dir noch die DML Statements etwas durcheinander zu geraten. IDs sollten, sofern möglich, automatisch gesetzt werden, damit keine Schlüsselverletzungen auftreten. Dies wäre z.B. bei den Preisen, Bestellungen und Waren sinnvoll. Wenn Du innerhalb der M:N Relation die IDs abspeichern willst, dann musst Du genau diese eine ID erst lesen und dann einfügen. Aber wie schon Saerdna geschrieben hat, die Tabellenstruktur wäre sinnvoll zu kennen
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.