Tabellenfeldnamen & Inhalte

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

  • Tabellenfeldnamen & Inhalte

    Hallo zusammen ..
    ich stehe da vor einem mysql Prob bei dem ich einfach nicht weiterkomme.

    Tabelle (items)
    5 Felder (id, item, size, amount, colour)

    Außer id sollen alle Feldnamen und die darin enthaltenen Daten ausgegeben werden. Sollte eins oder mehrere Felder keinen Inhalt enthalten so darf dieses nicht ausgegeben werden.

    Mal angenommen Felder (size, colour) sind beim Eintrag id=1 leer so soll die Ausgabe folgendermaßen aussehen:

    item: Box
    amount: 2

    auf keinen Fall aber so:

    id: 1
    item: Box
    size:
    amount: 2
    colour:

    wie kriege ich sowas hin?
    Zuletzt geändert von Vestron; 05.05.2008, 16:07.

  • #2
    Wenn außer ID kein Feld leer sein darf, kann die Ausgabe doch nur so aussehen:

    Code:
    id: 1
    item: <anything>
    size: <anything>
    amount: <anything>
    colour: <anything>
    [FONT="Helvetica"]twitter.com/unset[/FONT]

    Shitstorm Podcast – Wöchentliches Auskotzen

    Kommentar


    • #3
      ... es geht darum Feldnamen (ausser id) auszugeben und nur solche die auch was enthalten ..
      zB wenn bei id=2 folgendes bekannt ist (id, item, size, colour)
      dann Ausgabe:

      item: <anything>
      size: <anything>
      colour: <anything>

      zB bei id=3 sind bekannt (id, item, colour)
      dann Ausgabe:

      item: <anything>
      colour: <anything>

      weiß nicht, ob das jetzt verständlicher ist ...

      Kommentar


      • #4
        In einem SQL-Result müssen alle Datensätze die selbe Anzahl von Feldern enthalten. Du kannst also nicht beim ersten Datensatz 5 Felder und beim zweiten nur 3 haben. Du kannst aber doch in der Applikation prüfen, ob ein Feld befüllt ist oder nicht?!
        [FONT="Helvetica"]twitter.com/unset[/FONT]

        Shitstorm Podcast – Wöchentliches Auskotzen

        Kommentar


        • #5
          Original geschrieben von unset
          Du kannst aber doch in der Applikation prüfen, ob ein Feld befüllt ist oder nicht?!
          klar ... dann wird in der Ausgabe halt das entspr Feld ausgelassen ...

          Kommentar


          • #6
            Ja, dann mach es doch so ...
            [FONT="Helvetica"]twitter.com/unset[/FONT]

            Shitstorm Podcast – Wöchentliches Auskotzen

            Kommentar


            • #7
              Du kannst aber auch einfach einen SELECT in dieser Form machen:

              Code:
              SELECT id, IFNULL(item, 0), IFNULL(size, 0)
              FROM tabelle
              dann wird dir item nur zurückgegeben, wenn item NICHT NULL ist und ansonsten gibt es eine (int)0 an dieser Stelle zurück.... aber sauber ist das nicht.... ich würde es auch in der Anwendung machen....
              signed oder unsigned... das ist hier die Frage

              Kommentar


              • #8
                Gib halt einfach aus, was nicht leer ist, z.B.
                PHP-Code:
                ...
                while (
                $row mysql_fetch_object()){
                    foreach (
                $row as $key => $val){
                        if (!empty(
                $val)){
                            echo 
                "$key$val<br />";
                        }
                    }
                }
                ... 
                wo ist denn das Problem?
                Gruss
                H2O

                Kommentar


                • #9
                  Original geschrieben von H2O
                  while ($row = mysql_fetch_object()){
                  foreach ($row as $key => $val){
                  if (!empty($val)){
                  echo "$key: $val<br />";
                  }
                  }
                  }
                  auch eine schicke Lösung!


                  .. besten dank Jungs!

                  Kommentar


                  • #10
                    Original geschrieben von Vestron
                    auch eine schicke Lösung!
                    Also so formatiert ist sie alles andere als schick!
                    Gruss
                    H2O

                    Kommentar


                    • #11
                      Also so formatiert ist sie alles andere als schick!
                      Liegt halt am quote-Tag. Er wird das schon aus deinem PHP-Tag nehmen!

                      Kommentar

                      Lädt...
                      X