Sortierung WHERE Abfrage Fehlermeldung

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

  • Sortierung WHERE Abfrage Fehlermeldung

    Hallo

    Habe in einem Script

    PHP-Code:
    <a href=\"sort.php?SUID=$SUID&sortb=a&sortB=A\">A</a>|
    fortlaufend bis z... 
    Nun wird diese URL in der Datei sort.php ausgewertet und die Datrenbank abgefragt.

    PHP-Code:
     $result mysql_query("SELECT * FROM $information WHERE nname == $sortb OR $sortB ORDER BY nname ASC");
    while (
    $info mysql_fetch_array($result,MYSQL_Both)) 
    und nun bekomme ich die Fehlermeldung
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /www/htdocs/v093191/hdp/sort.php on line 51

    Line 51 ist da wo while steht.

    Wisst ihr woran das liegen könnte?

  • #2
    Versuch mal folgendes
    PHP-Code:
    $result mysql_query("SELECT * FROM $information WHERE nname == $sortb OR $sortB ORDER BY nname ASC")
      OR die(
    mysql_error() . '<br>ZEILE: ' __LINE__);
    while (
    $info mysql_fetch_array($result,MYSQL_Both)) 
    cheers
    Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jedermann ist davon überzeugt, dass er genug davon habe – René Descartes
    PHP Sicherheit
    PHPUnit[1-2]
    Professionelle Softwareentwicklung mit PHP 5
    Professionelle PHP 5-Programmierung

    Kommentar


    • #3
      Versuch mal das zum testen ...bin vielleicht unerfahren, aber irgendwie kommt mir die Abfrage seltsam vor...

      SELECT * FROM $information
      WHERE nname = $sortb
      OR nname = $sortB
      ORDER BY nname ASC

      EDIT:
      bäh, ich lass es *swt*

      Kommentar


      • #4
        Hi,

        Ändere mal Deine Abfrage:

        SELECT * FROM $information WHERE nname == $sortb OR $sortB ORDER BY nname ASC

        in

        SELECT * FROM $information WHERE nname = $sortb OR nname =$sortB ORDER BY nname ASC
        mal wieder auf Books for free! vorbeigeschaut?
        Jetzt mit mehr als 1200 Texten / Tutorials
        Wir veröffentlichen auch eure Texte!

        Kommentar


        • #5
          Re: Sortierung WHERE Abfrage Fehlermeldung

          der ein sagt, "änder mal dies", der andere, "bau mal das um", etc.

          dabei lautet die einzig "richtige" antwort schlicht und einfach "lies doch erst mal im manual nach!"
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            Da hast du sicher Recht wahsaga, allerdings urteilst du ein wenig vorschnell.

            Denkst du nicht, das ich mir die Mühe gemacht habe und bei google und co gesucht habe?

            Doch habe ich, jedoch hat es mich nicht weiter gebracht und deshalb habe ich den Weg hier ins Forum gefunden um hier meinen nächsten Schritt, Das Nachfragen in Bezug auf mein Problem, zu vollziehen. Ja und hier bin ich nun und es geht leider immer noch nicht :/

            Danke an Lachesis, Gae-Bulga und schlimmerfinger, leider funktionierte keine der aufgezeigten möglichen Lösungen.

            Im Moment habe ich den Code so abgeändert (Datei sort.php):
            PHP-Code:
            $result mysql_query("SELECT * FROM $information WHERE nname = $sortb "
              OR die(
            mysql_error() . '<br>ZEILE: ' __LINE__);
                
            while (
            $info mysql_fetch_row($result)) 
            und bekomme als Fehlermeldung:
            Unknown column 'a' in 'where clause'
            (a war der link den ich angeklickt habe.)

            (Datei index.php)
            PHP-Code:
            <a href=\"sort.php?SUID=$SUID&sortb=a&sortB=A\">A</a>| 
            ****EDIT****

            Hab die Lösung, nach vielen Versuchen und nochmal google mit anderen "Fragen" zu rate ziehen habe ich heraus gefunden,
            1. $sortb muss ich Hochkommate
            2. muss ich "Array" nicht pber die spaltennamen sonern über die indiz (heisst das so?) ansprechen also $info[2] statt $info[nname]


            Allerdings habe ich nun eine Fehlermeldung ressource id #4, hm , trotzdem funktioniert alles
            Zuletzt geändert von wiSh; 08.06.2004, 13:13.

            Kommentar


            • #7
              Im Moment habe ich den Code so abgeändert (Datei sort.php):
              [PHP]$result = mysql_query("SELECT * FROM $information WHERE nname = $sortb ")
              OR die(mysql_error() . '<br>ZEILE: ' . __LINE__);

              und bekomme als Fehlermeldung:
              Unknown column 'a' in 'where clause'
              (a war der link den ich angeklickt habe.)

              (Datei index.php)
              PHP-Code:
              <a href=\"sort.php?SUID=$SUID&sortb=a&sortB=A\">A</a>| 
              [/B]
              Bist du dir sicher das du die Datei hochgefaren hast? Ansonten lass dir nochmal die Abfrage ausgeben.
              PHP-Code:
              echo $sql "SELECT * FROM $information WHERE nname = $sortb ";
              $result mysql_query($sql
                OR die(
              '<br>' mysql_error() . '<br>ZEILE: ' __LINE__); 
              Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jedermann ist davon überzeugt, dass er genug davon habe – René Descartes
              PHP Sicherheit
              PHPUnit[1-2]
              Professionelle Softwareentwicklung mit PHP 5
              Professionelle PHP 5-Programmierung

              Kommentar


              • #8
                da sortb keine zahl ist wäre ' ' rechts links in deinem sql statement angebracht.

                Siehe www.mysql.de

                dann weisst du auch wo die ' fehlen.
                mfg
                marc75

                <Platz für anderes>

                Kommentar


                • #9
                  ****EDIT****

                  Hab die Lösung, nach vielen Versuchen und nochmal google mit anderen "Fragen" zu rate ziehen habe ich heraus gefunden,
                  1. $sortb muss ich Hochkommate
                  2. muss ich "Array" nicht pber die spaltennamen sonern über die indiz (heisst das so?) ansprechen also $info[2] statt $info[nname]


                  Allerdings habe ich nun eine Fehlermeldung ressource id #4, hm , trotzdem funktioniert alles

                  Kommentar


                  • #10
                    Original geschrieben von wiSh
                    1. $sortb muss ich Hochkommate
                    wie gesagt, manual lesen ...

                    2. muss ich "Array" nicht pber die spaltennamen sonern über die indiz (heisst das so?) ansprechen also $info[2] statt $info[nname]
                    ja, wenn du mysql_fetch_row verwendest, musst du das wohl.
                    aber es gibt ja auch noch andere mysql_fetch-funktionen, auch welche, bei denen du durchaus den spaltennamen als assoziativen index verwenden kannst.

                    Allerdings habe ich nun eine Fehlermeldung ressource id #4
                    das ist keine fehlermeldung, sondern vermutlich gibst du irgendwo $result per echo o.ä. aus.
                    und das diese variable nun mal nur ein imaginäres konstrukt beinhaltet, welches eben auf die mysql-ergebnismenge zeigt, gibt PHP dir dann nur aus, dass es sich um die ressource mit der nummer xy handelt.
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar

                    Lädt...
                    X