mrhappiness login script

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • mrhappiness login script

    Ich krieg folgenden Fehler:
    mysql_num_rows(): supplied argument is not a valid MySQL ... on line 61

    Das ist die Stelle:
    PHP Code:
    function logged_in()
    {
        
    $sql="SELECT id
        FROM 
    $usertbl
        WHERE session='"
    .session_id()."'
        LIMIT 1"
    ;
        
    $resultmysql_query($sql);
          return ( 
    mysql_num_rows($result)==1); // hier ist Linie 61

    Ich hab bei allen Zeilennamen das User vorne weggenommen und alles kleingeschrieben. Das ist auch in der MySQL Tabelle so.
    Ausserdem hab ich die Variable $usertbl in einer konfigurationsdatei definiert.

    gruss
    roman
    Besucht doch mal meine Homepage: Romansvillage

  • #2
    ich schätze dass esson_id() in diesem fall keinen wert zurückgibt


    An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

    Comment


    • #3
      Änder die Funktion mal so, dass sie dir
      a) den Query ausgibt und
      b) eine MySQL-Fehlermeldung ausgibt, wenn der Query fehlgeschlagen ist.

      Ungefähr so:
      PHP Code:
      function logged_in()
      {
          
      $sql="SELECT id
          FROM 
      $usertbl
          WHERE session='"
      .session_id()."'
          LIMIT 1"
      ;
          echo 
      "Query: " $sql;
          
      $resultmysql_query($sql) or die(mysql_error());
            return ( 
      mysql_num_rows($result)==1); // hier ist Linie 61

      Dann sag mal, was der Code so an Ausgaben produziert, oder noch besser finde anhand der Ausgaben selbst heraus, was falsch ist.
      hopka.net!

      Comment


      • #4
        Query: SELECT id FROM WHERE session='9151f2573af1d4c562b8799f89d768be' LIMIT 1You have an error in your SQL syntax near 'WHERE session='9151f2573af1d4c562b8799f89d768be' LIMIT 1' at line 3
        Besucht doch mal meine Homepage: Romansvillage

        Comment


        • #5
          Tja, was sagt uns das?

          Richtig, die Variable $usertbl ist nicht definiert.

          Woran liegt das?

          Richtig, sie ist eine globale Variable, und daher innerhalb der Funktion unsichtbar.


          Hättest du den Anfang des PHP-Handbuchs gelesen (in dem sehr viele nützliche Grundlagen stehen), wüsstest du das auch selbst.

          Insbesondere ist der Geltungsbereich von Variablen für dich interessant, aber ich empfehle dir trotzdem mal die kompletten ersten 4 Kapitel des PHP-Handbuchs zu lesen (ist nicht so viel, wie es sich anhört)
          hopka.net!

          Comment


          • #6
            Danke.

            Ich sollte mir mal komplett ein PHP-Handbuch lesen.


            Ich hab es so gemacht dass die Variable definiert ist.
            Es gibt immernoch eine Fehlermeldung:

            Query: SELECT id FROM user WHERE session='4e64913e2c180f53ad1a87e5fe8f0060' LIMIT 1
            Besucht doch mal meine Homepage: Romansvillage

            Comment


            • #7
              das ist keine Fehlermeldung, das kommt von dem echo.

              Kannst du wieder wegmachen (die Zeile mit dem echo).
              hopka.net!

              Comment


              • #8
                Danke
                Besucht doch mal meine Homepage: Romansvillage

                Comment

                Working...
                X