kleine SQL Problem beim Abfragen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • kleine SQL Problem beim Abfragen

    Moin Moin leute
    Hab da mal ein kleines Problem mit ner abfrage!

    meine SQL Tabelle (sms bzw. witz) sieht so aus:

    id | cat | sms bzw. witz

    ich möchte gerne eine Index seite erstellen auf der angezeigt wird welche ketegorien es gibt!
    und die ausgabe soll mit dem index verknüft sein.
    also so hatte ich mir das vorgestelt:

    Index: Blond Ausgabe Blond SMS
    Index: Baby Ausgabe Baby SMS
    etc.

    die normale abfrage bekomme ich noch hin aber die ich jetzt haben möchte bereitet mir kopfzerbrechen.

    ich gerade mal 2 Monate mit PHP dabei aber in meinen Büchern seht sowas nicht drin.

    Danke im Voraus
    lordvoldemort2005

  • #2
    kannst du dein Problem bitte noch etwas genauer erklären ... ich bin da nicht ganz durchgestiegen.

    Hast du eine Tabelle oder mehrere?
    Welchen Teil der Abfrage bekommst du hin und welchen nicht?
    Was ist "cat", "SMS", "Ausgabe"?
    Was bedeutet "die ausgabe soll mit dem index verknüft sein" genau?
    [COLOR=royalblue]Ein großes DANKE an alle, die sich auf selbstlose Weise im Forum einbringen.[/COLOR]

    [COLOR=silver]btw: REAL PROGRAMMERs aren't afraid to use GOTOs![/COLOR]

    [color=indigo]Etwas ernster, aber auch nicht weiter tragisch, sieht die Situation bei Software-Patenten aus. Software-Patente sind eine amerikanische Erfindung und stehen auf dem selben Blatt wie genveränderte Babynahrung, die im Supermarkt nicht mehr als solche gekennzeichnet werden soll, um die Hersteller nicht gegenüber denen natürlicher Produkte zu diskriminieren ...[/color]
    (from here)

    Kommentar


    • #3
      genauer erklärt

      also ich habe eine Tabelle die SMS bez. Witz heißt.
      In dieser Tabelle sind folgenden Spalten enthalten:

      id | cat | sms (sms text)

      cat = Kategorie
      (sms ist variabel und kann auch für MMS und Witze genutzt werden)

      Ich möcht gerne eine Index.php Seite erstellen in der die "cat" (Kategorien) ausgegeben werden sollen, allerding nicht alle untereinander sondern immer 3 neben einander, also so:

      Blond | Baby | Bundeswehr
      Anwalt | Berufe | etc.

      Dann sollen die "cat" einen Link bekomen der zu einer anderen Seite weiter geht in der dann die angeklickt Kategorie (z.B. Blond) ausgegen werden soll (ausgabe.php)

      ein Beispiel:
      Index.php - Blond (Übersicht) -> klick -> ausgabe.php - "cat" blond (DB Abfrage)
      Index.php - Baby (Übersicht) -> klick -> ausgabe.php - "cat" baby (DB Abfrage)

      Soweit okay?

      Gut jetzt zu dem was ich davon kann...
      Also ich kann eine einfach DB Abfrage erstellen in dem er alle Einträge mir aus gibt, also so:

      PHP-Code:
      mysql_query("SELECT * FROM sms ORDER BY id DESC 
      Nun möchte ich aber dass das Script mir einmal auf der index.php nur die "cat" ausgibt (Kategorien) und auf der ausgabe.php sollen dann die damit verbunden SMS Texte angezeit werden. (siehe "ein Beispiel")

      Wie bekomme ich das jetzt hin?
      (Bin auch gerne für andere Lösungen offen)

      lordvoldemort2005

      Kommentar


      • #4
        Re: genauer erklärt

        Original geschrieben von lordvoldemort
        Ich möcht gerne eine Index.php Seite erstellen in der die "cat" (Kategorien) ausgegeben werden sollen, allerding nicht alle untereinander sondern immer 3 neben einander, also so:

        Blond | Baby | Bundeswehr
        Anwalt | Berufe | etc.
        deine Query sollte ungefähr so aussehen: "select distinct `cat` from `sms` order by `cat` desc" - damit werden nur die Kategorien zurückgegeben und jede nur genau ein mal

        dein Problem mit der Formatierung sollte sich doch lösen lassen
        z.B. kannst du einen Zählervar $i mitlaufen lassen und mit ($i % 3) herausfinden in an welcher Position in der Zeile du bist. Im Klartext: wenn ($i % 3) == 2 dann gibt du "<br />" statt "|" aus.


        Dann sollen die "cat" einen Link bekomen der zu einer anderen Seite weiter geht in der dann die angeklickt Kategorie (z.B. Blond) ausgegen werden soll (ausgabe.php)
        das sollte doch nun wirklich kein Problem sein:
        Du machst aus den obigen Kategorien jeweils Links mit "ausgabe.php?id=$row['cat']" als Ziel ($row[] sei der aktuelle Datensatz)

        ein Beispiel:
        Index.php - Blond (Übersicht) -> klick -> ausgabe.php - "cat" blond (DB Abfrage)
        Index.php - Baby (Übersicht) -> klick -> ausgabe.php - "cat" baby (DB Abfrage)
        in der "ausgabe.php" brauchst du dann eine neue Query: "select * from `sms` where `cat` = '$_GET[cat]' ...."



        Soweit okay?
        ... dann mal an die Arbeit
        und btw: schau mal nach einer geeigneten MySQL-Referenz oder -Hilfe (auch wenn ich gleich wieder von allen verschrien werde: http://reeg.net finde ich gar nicht soo schlecht ... für den Anfang jedenfalls)
        [COLOR=royalblue]Ein großes DANKE an alle, die sich auf selbstlose Weise im Forum einbringen.[/COLOR]

        [COLOR=silver]btw: REAL PROGRAMMERs aren't afraid to use GOTOs![/COLOR]

        [color=indigo]Etwas ernster, aber auch nicht weiter tragisch, sieht die Situation bei Software-Patenten aus. Software-Patente sind eine amerikanische Erfindung und stehen auf dem selben Blatt wie genveränderte Babynahrung, die im Supermarkt nicht mehr als solche gekennzeichnet werden soll, um die Hersteller nicht gegenüber denen natürlicher Produkte zu diskriminieren ...[/color]
        (from here)

        Kommentar

        Lädt...
        X