Msql Ausgabe hilfe b.z.w php hilfe

  • Hi @ alle
    Wünsche allen erstmal ein frohes neues Jahr
    Bin dabei mir eine Einahmen seite zu bauen.
    Ausgabe klappt auch, aber nicht so wie ich es haben will
    Wenn ein Kunde mehrere Artikel bestellt hat möchte ich das die Ausgabe anders ist zuzeit ist sie so

    Datum: | RechNr | Kundename | Anzahl | Artikelbezeichnung | Einzelpreis | Gesammtpreis | Versand | Betrag | Beleg.Nr:
    20.20.2006 |301 | Martin | 2 |Vase |3.49 | 6.98 | 6.70 |13.38 EUR |7
    20.20.2006 |301 | Martin | 1 |Schlüsselanhänger |2.99| 2.99 | 6.7000 |16.67 EUR |7

    so möchte ich das gerne haben

    Datum: | RechNr | Kundename | Anzahl | Artikelbezeichnung | Einzelpreis | Gesammtpreis | Versand | Betrag | Beleg.Nr:
    20.20.2006 |301 | Martin | 2 |Vase |3.49 | 6.98 | leer|leer |leer
    leer|leer | Martin | 1 |Schlüsselanhänger |2.99| 2.99 | 6.7000 |16.67 EUR |7

    Kann man das mit Php realisieren?
    hier ist mein SQL abfrage

    Code
    $query = tep_db_query("SELECT
              p.*, pd.*
      FROM " . TOTAL . " pd
      left JOIN " . TOTAL_PRODUCTS  . " p
      ON pd.Bestell_id  = p.Bestell_id
        ");
         while ($Bestellung = tep_db_fetch_array($query))

    Wenn ihr noch mehr brauchen tut bitte melden
    Grüß
    Martin

  • ja, da msust du mehrere tabellen bauen, um doppelte eintragungen zu vermeiden und die Normalformen einzuhalten !
    zB
    bestellung:
    datum | ID | Kunden_ID | gesamt_kosten | preis | lieferkosten

    kunde:
    ID | reg_datum | anzahl_iwas | anschrift | bla

    prod_kauf:
    ID | best_ID | produkt_ID

    produkt:
    ID | preis | artikel_nr | hersteller_ID | bestand

    mit geschickten querys kannst du dann alles einfacher abrufen und vermeidest doppelte einträge und leere Felder

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • zB so:

    SELECT produkt.preis, produkt.name, bestellung.preis, bestellung.lieferkosten, bestellung.gesamt_kosten, kunde.name, kunde.anschrift FROM produkt, bestellung, kunde, prod_kauf WHERE prod_kauf.produkt_ID = produkt.id AND bestellung.kunden_id = 500 AND prod_kauf.produkt_id = produkt.id AND bestellung.kunden_id = kunde.id GROUP BY kunde.id, bestellung.id

    sind sicher 1 milliarde fehler drinne und ich bin viel zu fertig, das durchzuschaun, aber ich denke das prinzip wurde klar ;)

    man kann das ganze sicher viel einfacher gestalten, ich will dir nur mal zeigen, was du noch für möglichkeiten hast :)

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • Zitat von BendOr

    zB so:

    SELECT produkt.preis, produkt.name, bestellung.preis, bestellung.lieferkosten, bestellung.gesamt_kosten, kunde.name, kunde.anschrift FROM produkt, bestellung, kunde, prod_kauf WHERE prod_kauf.produkt_ID = produkt.id AND bestellung.kunden_id = 500 AND prod_kauf.produkt_id = produkt.id AND bestellung.kunden_id = kunde.id GROUP BY kunde.id, bestellung.id

    sind sicher 1 milliarde fehler drinne und ich bin viel zu fertig, das durchzuschaun, aber ich denke das prinzip wurde klar ;)

    man kann das ganze sicher viel einfacher gestalten, ich will dir nur mal zeigen, was du noch für möglichkeiten hast :)

    Hi
    Sorry das ich mich jetzt erst wieder melde,habe jetzt die ganze Zeit ausprobiert,leider kriege ich immer noch die selbe ausgabe so wie ich das nicht haben will.
    habe mal ein Bild gemacht,so wie ich das haben will das untere mit beleg 4 ist falsch ,ich möchte es wie oben aber die felder die ich schwarz habe das er die nicht ausgeben tut
    Es ist oben die selbe Belegnummer und datum
    Grüß
    Martin
    http://img293.imageshack.us/my.php?image=bildggggeh8.png

  • dass müsstest du mit GROUP BY lösen können
    zB GROUP BY Kundenname, beleg-Nr

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • Zitat von BendOr

    dass müsstest du mit GROUP BY lösen können
    zB GROUP BY Kundenname, beleg-Nr

    Hi BendOr
    bin leider kein Schritt weiter ,hast du verlleicht ein Messenger?
    Oder hat jemand andres noch eine Idee?
    grüß
    Martin

  • hi
    mmh,kann keiner helfen?solangsam komm ich ins zweifel ob es überhaupt geht.
    das mit group habe ich probiert dort gibt er mir aber nur noch eine reihe aus und nicht mehr den zweiten zugehörigen datensatz
    mmh, weiss jemand noch rat?
    grüß
    Martin

  • Moin,
    ich hab jetzt mal was gebaut um dir zuhelfen!
    Du sollst verstehen das deine Variante sehr unkonfortabel ist und ich hab dir mal eine andere Version gebaut mit der mann besser umgehen kann ;)

    Zuerst solltest du die MySQL Tabellen einfügen


    Sind sogar direkt Test Datensätze drin ;)

    Und hier hab ich dir mal eine PHP Datei gemacht (Hab mir mühe gegeben Kommentare reinzuschreiben und hoffe du verstehst was ich geschrieben habe^^)
    test.php

    Gruß crAzywuLf :D

  • crAzywuLf
    mmh,sieht sehr gut aus ist aber nicht das was ich suche
    Ich versuche es nochmal zu erklären
    Es soll ein komplett übersicht sein über alle bestellung sein
    Wenn ein Kunde mehrere Bestellung hat möchte ich das es so aussehen tut
    Datum |Rechnungsnummer| Name | Anzahl |Produktname|einzelpreis | Gesammtpreis | Versandkosten |Total | ID
    20.20.2006 |301 | Martin | 2 |Vase |3.49 | 6.98
    nix(feld leer) |nix(feld leer)| Martin | 1 |Eier |1.00 | 1.00 | 6.90 | 14.80 | 1
    Nächte bestellung einen kunden

    hast du Messenger ?
    grüß
    Martin

  • ----- edit ------

    Einmal editiert, zuletzt von crAzywuLf (22. Oktober 2008 um 16:14)