db abfrage kein ergebnis

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

  • db abfrage kein ergebnis

    Guten Morgen zusammen.
    Irgendwie steh ich gerade auf dem Schlauch.
    Hoffentlich könnt ihr mir weiter helfen.

    Ich Frage meine Datenbank ab.Alles klappt mal wieder soweit gut.
    Nur, will ich überprüfen ob ein leeres resultat zurückgegeben wird wenn
    jemand versucht produkte abzurufen obwohl in der datenbank kein eintrag
    darüber exisiert.

    Ich versuchte das schon mit if (empty($result)) und if ($result == "") jedoch hat er immer was dort
    drin ( Resource Id #10 ) sagt er immer wenn ich das mit print_r abrufe.
    Bzw. ich bekomme nicht ausgegeben wenn nix drin steht.
    was mach ich falsch?

    hier mein script

    PHP-Code:

    if ($anzeige == "")
    {

    $abfrage "SELECT marke,produkt,zoll,type,bildurl,id FROM produkte ORDER BY marke DESC LIMIT 6 ";

    $result mysql_query($abfrage);
    while(
    $row mysql_fetch_object($result))

    {      
            echo 
    $row->marke $row->produkt $row->zoll $row->type "
    }
    exit;
    }

    if (
    $anzeige == "technik" or "marke" or "zoll")

     
    $abfrage "SELECT marke,produkt,zoll,type,bildurl,id FROM produkte where $anzeige = '$art' order by 'desc'";
    $result mysql_query($abfrage);

    if (empty(
    $result)) {echo"kein ergebnis";}else{

    while(
    $row mysql_fetch_object($result))

    {      
       echo 
    "$row->marke $row->produkt $row->zoll $row->type "
    }
        }} 
    Danke für eure Hilfe

  • #2
    Guten Morgen,

    $result ist weder Array noch String, daher klappt das mit empty u. s. w. nicht. Es ist eine Ressource, auf der man nur mit den entsprechenden Funktionen operieren kann. Die Anzahl der gefundenen Datensätze gibt dir [FONT="Courier New"]mysql_num_rows($result)[/FONT].

    Gruß,

    Amica
    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
    Super, danke!
    [/COLOR]

    Kommentar


    • #3
      danke für die antwort.
      hm..also damit klappt das ebenfalls nicht..

      PHP-Code:
      $test mysql_num_rows($result);

      print_r ($test); 
      damit sollte doch zumindest was drinstehen wenn datensätze gefunden werden oder?
      Daten gibt er aus, jedoch steht nichts in $test drin.

      Kommentar


      • #4
        Zitat von activexactive Beitrag anzeigen
        danke für die antwort.
        hm..also damit klappt das ebenfalls nicht..
        [...]
        Daten gibt er aus, jedoch steht nichts in $test drin.
        Sicher, dass du die Zahl in der ersten Zeile mit den Daten nicht übersehen hast? Du hast nämlich keinen Zeilenumbruch dahinter.
        [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
        Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
        Super, danke!
        [/COLOR]

        Kommentar


        • #5
          ja, ich habe darauf geachtet bei mir müssen demnach 2 datensätze ausgegeben werden..tut er aber nicht
          bzw.er zeigt keine zahl
          Zuletzt geändert von activexactive; 30.09.2009, 06:55.

          Kommentar


          • #6
            Komisch, poste nochmal bitte den ganzen aktuellen Code.
            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
            Super, danke!
            [/COLOR]

            Kommentar


            • #7
              ok, hier mal alles all inclusive

              PHP-Code:

              include "mysql.php";
              $anzeige == $_GET['technik'];
              $anzeige == $_GET['marke'];
              $anzeige == $_GET['zoll'];
              $art == $_GET['art'];


              if (
              $anzeige == "")
              {




                    
              $abfrage "SELECT marke,produkt,zoll,type,bildurl,id FROM produkte ORDER BY marke DESC LIMIT 6 ";
              $result mysql_query($abfrage);

              while(
              $row mysql_fetch_object($result))



              {      
                    
                  echo 
              "  
                      <div class=\"vorschaubild\">

                
              $row->marke $row->produkt $row->zoll $row->type<br /><br />


                    <a href=\"artikel.php?pid=
              $row->id\"><img src=\"$row->bildurl\" width=\"150\" border=\"0\"/></a><br />

              </div>
                    "

              }
              exit;
              }

              if (
              $anzeige == "technik" or "marke" or "zoll")
              {
                  
                  
                  
                    
              $abfrage "SELECT marke,produkt,zoll,type,bildurl,id FROM produkte where $anzeige = '$art' order by 'desc'";
              $result mysql_query($abfrage);

              $test mysql_num_rows($result);

              print_r ($test );

              while(
              $row mysql_fetch_object($result))



              {      

                  echo 
              "
                      <div class=\"vorschaubild\">

                
              $row->marke $row->produkt $row->zoll $row->type<br /><br />


                    <a href=\"artikel.php?pid=
              $row->id\"><img src=\"$row->bildurl\" width=\"150\" border=\"0\"/></a><br />

              </div>
                    "

                   
              }
                  } 

              Kommentar


              • #8
                Mach doch mal aus [FONT="Courier New"]print_r($test)[/FONT] lieber ein
                PHP-Code:
                echo("<script type='text/javascript'>alert('$test');</script>"); 
                Btw: Dass der Code an vielen Stellen Blödsinn ist, ist dir selbst schon aufgefallen, oder?
                [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                Super, danke!
                [/COLOR]

                Kommentar


                • #9
                  schon probiert.. passiert nix.. wieso..was ist daran blödsinn ? kannst mir ja nen anderen vorschlag unterbreiten

                  Kommentar


                  • #10
                    Zitat von activexactive Beitrag anzeigen
                    schon probiert.. passiert nix..
                    Dachte ich mir, aber dann sind die Rows die ausgegeben werden auch nicht die vom 2. Select, sondern nur die vom ersten, kann das sein?

                    Zitat von activexactive Beitrag anzeigen
                    wieso..was ist daran blödsinn ? kannst mir ja nen anderen vorschlag unterbreiten
                    PHP und MySQL lernen, z. B?
                    SCNR

                    Ne, ernsthaft: Der Code strotzt vor Fehlern.
                    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                    Super, danke!
                    [/COLOR]

                    Kommentar


                    • #11
                      hm..aber dann würde er mir ja nicht die sachen ausgeben die ich abfrage.
                      ich sehe keinen fehler..deshalb frag ich ja um hilfe.

                      wenn der so voller fehler ist, bring bitte mal ein beispiel was besser gemacht werden kann.. bin für alles offen

                      Kommentar


                      • #12
                        lol, ich habs

                        schlag mich ned.. habe die datei in den falschen ordner geladen die ganze zeit..dann kann ja auch nix passieren

                        naja..jedenfalls..es geht jetzt..

                        dennoch..immer her mit verbesserungen, tipps usw..bin ja nicht gerade der pro in dieser sache.

                        Kommentar


                        • #13
                          Zitat von activexactive Beitrag anzeigen
                          hm..aber dann würde er mir ja nicht die sachen ausgeben die ich abfrage.
                          Tut er das wirklich? Was fragst du denn ab? Dann pack mal die beiden Zeilen mit $test in den oberen if-Block und sag mir, was passiert.

                          Zitat von activexactive Beitrag anzeigen
                          wenn der so voller fehler ist, bring bitte mal ein beispiel was besser gemacht werden kann.. bin für alles offen
                          Zeile 2-5: Sinnloses Vergleichen von Variablen.
                          Zeile 8: $anzeige ist mit Sicherheit leer (wenn es nicht in der inkludierten Datei definiert ist)
                          Zeile 37: $anzeige ist immer noch leer, aber die Bedinung wird trotzdem immer erfüllt, weil du [FONT="Courier New"]or[/FONT] falsch benutzt. Allerdings kommt er hier nicht hin, weil er ja in Zeile 34 durch [FONT="Courier New"]exit[/FONT] aussteigt.
                          Zeile 42: das Statement ist ungültig und würde einen MySQL-Fehler verursachen.
                          [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                          Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                          Super, danke!
                          [/COLOR]

                          Kommentar


                          • #14
                            Zitat von activexactive Beitrag anzeigen
                            lol, ich habs

                            schlag mich ned.. habe die datei in den falschen ordner geladen die ganze zeit..dann kann ja auch nix passieren

                            naja..jedenfalls..es geht jetzt..
                            Echt? Ist das dann aber eine andere Datei als die gepostete? Die (die ich kenne) kann nämlich gar nicht funktionieren.
                            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                            Super, danke!
                            [/COLOR]

                            Kommentar


                            • #15
                              hi. ja stimmt..hast du recht..ab den zeilen 2-5 vergleiche ich variablen. sollten eigendlich zugewiesen werden. funzt aber trotzdem komischerweise.

                              im ersten if zweig wird nur abgefragt wenn keine auswahl getroffen wurde. also praktisch neueste produkte vorne und max 6. das klappt alles wunderbar.
                              und nun ja, diese datei ist eine includierte. die variablen dafür stehen in einer anderen datei. mir ging es ja jetzt auch nur darum warum er nichts ausgegeben hat.

                              ähm..ja, ist die gleiche datei. ich poste nochmal

                              PHP-Code:
                              include "mysql.php";
                              $anzeige $_GET['technik'];
                              $anzeige $_GET['marke'];
                              $anzeige $_GET['zoll'];
                              $art $_GET['art'];


                              if (
                              $anzeige == "")
                              {




                                    
                              $abfrage "SELECT marke,produkt,zoll,type,bildurl,id FROM produkte ORDER BY marke DESC LIMIT 6 ";
                              $result mysql_query($abfrage);

                              while(
                              $row mysql_fetch_object($result))



                              {      
                                    
                                  echo 
                              "  
                                      <div class=\"vorschaubild\">

                                
                              $row->marke $row->produkt $row->zoll $row->type<br /><br />


                                    <a href=\"artikel.php?pid=
                              $row->id\"><img src=\"$row->bildurl\" width=\"150\" border=\"0\"/></a><br />

                              </div>
                                    "

                              }
                              exit;
                              }









                              if (
                              $anzeige == "technik" or "marke" or "zoll")
                              {
                                  
                                  
                                  
                                    
                              $abfrage "SELECT marke,produkt,zoll,type,bildurl,id FROM produkte where $anzeige = '$art' order by 'desc'";
                              $result mysql_query($abfrage);

                              $test mysql_num_rows($result);

                              if (
                              $test == "0") {echo "keine daten";} else {

                              while(
                              $row mysql_fetch_object($result))



                              {      

                                  echo 
                              "
                                      <div class=\"vorschaubild\">

                                
                              $row->marke $row->produkt $row->zoll $row->type<br /><br />


                                    <a href=\"artikel.php?pid=
                              $row->id\"><img src=\"$row->bildurl\" width=\"150\" border=\"0\"/></a><br />

                              </div>
                                    "

                                   
                              }
                                  }} 
                              also so gehst nun 100%. danke für die hilfe..

                              Kommentar

                              Lädt...
                              X