Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] MySQL-Abrage wird nicht ausgegeben

Einklappen

Neue Werbung 2019

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

  • [Erledigt] MySQL-Abrage wird nicht ausgegeben

    Hi zusammen,
    ich habe hier ein ganz blödes Problem, was eigentlich banal einfach ist wahrscheinlich, aber ich sehe nicht die Lösung:

    PHP-Code:
    $sql "SELECT * FROM downloads_cats WHERE mother = NULL ORDER BY position ASC";
    $res $core->sql_query($sql);
    while(
    $row $res){    
        echo 
    '<a href="index.php?mode="viewcat"&id=' $row['id'] . '>' $row['name'] . '</a>';

    Die Methode $core->sql_query() sieht so aus:
    PHP-Code:
    public function sql_query($sql){
        
    $res mysql_query($sql);
        
    $res mysql_fetch_array($res);
        return 
    $res;

    Verbindung ist da; Es wird auch kein Fehler ausgegeben, die Seite bleibt einfach nur leer... Es gibt insgesamt zwei Datensätze in der Tabelle, die mother = NULL haben.

    Erwähnenswert ist vielleicht noch, dass wenn ich aus der Abfrage WHERE mother = NULL rausnehme, dass dann das Script komplett abstürzt (Endlosschleife?) (eigentlich dann auch insgesamt nur 4 Datensätze)

    Ciao,
    Niklas
    PHP-Code:
    if($_user == "php.de"){
         echo 
    ":-)";


  • #2
    1. IS NULL ?
    2.
    PHP-Code:
    while($row $res){ 
    so geht es nicht. Dann lieber mit foreach() arbeiten

    Kommentar


    • #3
      Endlosschleife?
      Was denkst Du denn auch, was hier passieren soll: while($row = $res)
      public function sql_query($sql){
      $res = mysql_query($sql);
      $res = mysql_fetch_array($res);
      return $res;
      }
      Variablennamen: Aua, Fehlerbehandlung: Fehlanzeige, Sinn: fragwürdig..
      [COLOR="#F5F5FF"]--[/COLOR]
      [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
      „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
      [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
      [COLOR="#F5F5FF"]
      --[/COLOR]

      Kommentar


      • #4
        Sorry, wenn euch die Fragen etwas dumm kommen.
        PHP-Code:
        while($row mysql_fetch_array($result)) 
        So habe ich es bisher immer gemacht und es hat auch hervorragend funktioniert. Jetzt habe ich ja eigentlich nichts anderes, denn die Methode sql_query() gibt ja einen Wert zurück der von der mysql_fetch_array-Funktion abhängt.

        @nikosch:
        Was ist so verkehrt an den Variablennamen? Dass eine Variable mehrfach weiterverarbeitet wird.
        Ich habe jetzt:
        PHP-Code:
            public function sql_query($sql){
                
        $res mysql_query($sql);
                
        $ret mysql_fetch_array($res);
                return 
        $ret;
            } 
        und
        PHP-Code:
                $sql "SELECT * FROM downloads_cats WHERE mother IS NULL ORDER BY position ASC";
                
        $res $core->sql_query($sql);
                if(
        $res){
                    while(
        $row $res){    
                        echo 
        '<a href="index.php?mode="viewcat"&id=' $row['id'] . '>' $row['name'] . '</a>';
                    } 
        Statt while() foreach() kann ja eigentlich nicht funktionieren. Das in der ersten Code-Box funktionierte ja sonst auch und es ist im Endeffekt ja das selbe...

        Ciao,
        Niklas
        PHP-Code:
        if($_user == "php.de"){
             echo 
        ":-)";

        Kommentar


        • #5
          wieso nciht 2 public methoden erstellen?
          PHP-Code:
          private $res;
           public function 
          query($sql){
                  
          $this->res mysql_query($sql);
              }  
          public function 
          fetch_array(){
           return 
          mysql_fetch_array($this->res);

          dann müsste es klappen mit dem while($row = $core->fetch_array())

          aber wie nikosch schon sagte : Sinn: fragwürdig..
          apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

          Kommentar


          • #6
            So habe ich es bisher immer gemacht und es hat auch hervorragend funktioniert. Jetzt habe ich ja eigentlich nichts anderes, denn die Methode sql_query() gibt ja einen Wert zurück der von der mysql_fetch_array-Funktion abhängt.
            Code:
            while (geldalle != gehe_zum_supermarkt ())
              {
              packe_Einkauf_in_den_schrank();
              }
            
            vs.
            
            restgeldstatus = gehe_zum_supermarkt ();
            while (geldalle != restgeldstatus)
              {
              packe_Einkauf_in_den_schrank();
              }
            [COLOR="#F5F5FF"]--[/COLOR]
            [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
            [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
            [COLOR="#F5F5FF"]
            --[/COLOR]

            Kommentar

            Lädt...
            X