0 Werte auch ausgeben?

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

  • 0 Werte auch ausgeben?

    Hallo,

    habe in meiner Tabelle eine Spalte mit dem wert (int).
    Wenn man in meinem Formular nun einen Zahlenwert eingibt, wird auch dementsprechend da eingetragen.
    Wenn ich in meinem Formular aber jetzt an der Stelle nichts eintrage, steht da in der Spalte eine 0.

    Ich möchte aber auch, wenn ich suche, das er mir alle Einträge ausgibt, auch da wo 0 steht.
    Das macht er aber nicht.

    PHP-Code:


    $sqlab 
    "select * from tabelle ";

    $sqlab .= " where (
    zahl != '-1') "

    Gut geraten ist halb gewußt.

  • #2
    Re: 0 Werte auch ausgeben?

    welches ergebnis bringt ein test deines query string in phpmyadmin?

    ich vermute, dass du die nuller noch irgendwo beim ausgeben der daten unterschlägst.


    btw: vergleiche bitte int-felder nicht auf gleicheit mit einem string, sondern nutze zahlen.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      btw: vergleiche bitte int-felder nicht auf gleicheit mit einem string, sondern nutze zahlen.
      Wie meinst du das?

      Das mit phpmyadmin zu probieren ist schonmal eine Gute Idee.
      Ich probiere es gleich mal.
      Gut geraten ist halb gewußt.

      Kommentar


      • #4
        Also wenn ich den sql Befehl in phpmyadmin eingebe, haut das alles hin.
        Ich kann != -1 und >= 0 einsetzten und er zeigt mir dann immer alle Datensätze.
        Aber im script haut das nicht hin? Komisch.
        Denn liegt wohl der Fehler irgendwie bei mir.

        Wenn ich aber den wert von int auf varchar setzte zeigt er mir aber im script alle werte an? Hä?
        Zuletzt geändert von martinm79; 20.02.2004, 00:28.
        Gut geraten ist halb gewußt.

        Kommentar


        • #5
          dann wäre es interessant zu sehen, wie du die daten in php weiterverarbeitest
          Ich denke, also bin ich. - Einige sind trotzdem...

          Kommentar


          • #6
            dann wäre es interessant zu sehen, wie du die daten in php weiterverarbeitest
            Na oben hab ich ja ein teil des scriptes eingefügt, mit dem ich die Daten raussuche. Danach gebe ich sie mit echo aus.

            Gibt es ein Befehl, zum ausgeben der ganzen Spalte, ausser

            PHP-Code:
            zahl >= '-1' 
            ?
            Gut geraten ist halb gewußt.

            Kommentar


            • #7
              zeig mir mal das zeug von mysql_query an bis hin zu den echo-anweisungen

              wenn "zahl >= -1" in deinem WHERE steht, kannst du's einfach weglassen (inkl. WHERE) und kriegst auch alle datensätze...
              Ich denke, also bin ich. - Einige sind trotzdem...

              Kommentar


              • #8
                PHP-Code:
                if ($preisvon == "alle") {                 //$preisvon kommt vom Formular
                                                                       
                      
                echo "Du hast kein Preis  gewählt!<br>";
                      
                $i "!=";                                   //hier soll er alle Einträge anzeigen!
                      
                }
                  else {
                      
                $i ">=";                                  //hier zeigt er alle Einträge ab 0 an!
                      
                }


                 
                $sqlab "select * from tabelle ";

                   
                $sqlab .= " where (preis $i '$preisvon' ) "

                   
                mysql_select_db('mysql');
                   
                $daten mysql_query($sqlab);


                   
                $num mysql_num_rows($daten);
                echo 
                "<center><b>";
                   if (
                $num==0) echo "Es wurden keine Einträge gefunden.";
                   if (
                $num == 1) echo "Es wurde $num Eintrag gefunden.";
                   if (
                $num 1) echo "Es wurden $num Einträge gefunden.";
                echo 
                "</b></center><br><br>";

                //usw... mit echo 
                Ja, das stimmt. Ich kann ich der where abfrage das weglassen und er Zeigt mir dann alles an, aber ich möchte ja nicht immer, das er mir alles auswählt. Nur wenn nichts im Formular ausgewählt wurde soll er mir alle anzeigen.



                Achso, wie gesagt. Wenn ich der Tabellenspalte den Typ varchar gebe, haut alles hin.
                Gebe ich ihr aber den Typ int, zeigt er mir nicht die Werte mit 0 an.
                Das verstehe ich nicht.
                Zuletzt geändert von martinm79; 20.02.2004, 12:33.
                Gut geraten ist halb gewußt.

                Kommentar


                • #9
                  lass hier $sqlab .= " where (preis $i '$preisvon' ) "; mal die hochkommata um $preisvon weg.
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Kommentar


                  • #10
                    Hab ich gemacht. Geht aber immer noch nicht. Mhh...
                    Gut geraten ist halb gewußt.

                    Kommentar


                    • #11
                      die eigentliche ausgabe hast du immer noch nicht gepostet...
                      Ich denke, also bin ich. - Einige sind trotzdem...

                      Kommentar


                      • #12
                        versuch mal so:
                        PHP-Code:
                        $sqlab .= " where preis ".$i." '$preisvon'  "
                        klammer brauchst Du auch nicht...
                        MfG

                        Kommentar


                        • #13
                          PHP-Code:

                          for ($i=0$i<$num$i++)
                             {
                                      
                          $preis mysql_result($daten$i"preis");
                               
                          echo 
                          "<table align=right><tr><td>";

                          echo 
                          "<fieldset width='40%'><legend><b>$preis EUR</b>&nbsp$festvb&nbsp&nbsp&nbsp$status</legend>";

                          //usw... 
                          Gut geraten ist halb gewußt.

                          Kommentar


                          • #14
                            Original geschrieben von martinm79
                            PHP-Code:
                            echo "<fieldset width='40%'><legend><b>$preis EUR</b>&nbsp$festvb&nbsp&nbsp&nbsp$status</legend>"
                            OffTopic:
                            warum möchtest du den browser die zeichenkette &amp;nbsp zwischen den einzelnen werten anzeigen lassen? sieht das nicht ein bisschen doof aus?
                            I don't believe in rebirth. Actually, I never did in my whole lives.

                            Kommentar


                            • #15
                              Na ich mußte das ja irgendwie so hinbekommen, das es auch Optisch gut aussieht.
                              War für mich die einfachste Lösung. Wie sonst?
                              Aber das ist ja nicht der Grund, meines Problems.
                              Ach manne
                              Gut geraten ist halb gewußt.

                              Kommentar

                              Lädt...
                              X