Jessica: Session-Management

Hallo,

ich hab' mal wieder ein Problem mit meinem php-Session-Management. In Zeile 32 //*** if (($sql_c == $usrname) and ($sql_i! = ""))
  {
   $abfrage = "UPDATE sessions SET userid = $sql_i WHERE sid ='$sid'";***// wird die Fehlermeldung ausgegeben : " Parse error in Zeiele 32 in (url der php-Datei)"

Mehr leider nicht. Ich vermute es liegt aber an der Variable $sql_i. Das folgende Skript ist ein Baustein zur Ermittlung der Sessions beim Userlogin. Die Daten werden aus einer SQL-Datenbank ausgelesen. Für den User aus der Tabelle "benutzer". Die Sessions-Einträge werden in der Tabelle "sessions" registiert. Leider gibt`s da immer noch ein kleines Problem beim Eintrag der User-Id, den da wird auf Grund des Fehlers kein Eintrag in der dafür vorgesehenen Spalte hinterlegt.

Hier das Skript in ganzer Länge :
(Zum Hintergrund =
setup.inc : Setup-Variablen; func_db.inc : Verbindung zur SQl-Database)

<?php

include("setup.inc");
 include("func_db.inc");

// Verbindung herstellen
 $sql_con = dbconnect();
 $abfrage = "SELECT $id,$name,$pass FROM $user WHERE $name = '$usrname' and $pass = '$pwd';

// SQL-Abfrage
 $Query_Result = mysql_query($abfrage,$sql_con);
 $sql_row = @mysql_fetch_array($Query_Result);
 $sql_c=$sql_row[$name];
 $sql_i=$sql_row[$id];

// Auslesen aus Datenbank
 if (($sql_c == $usrname) and ($sql_i! = ""))
  {
   $abfrage = "UPDATE sessions SET userid = $sql_i WHERE sid ='$sid'";
   $Query_Result = mysql_query($abfrage,$sql_con);
   }
   else
   {
   echo"<meta http-equiv=Refresh content='0; URL=$login?sid=$sid'>";
  }

?>

Danke schon mal für Eure Hilfe. Gruss Jessica

  1. Hallo Jessica,

    ich hab' mal wieder ein Problem mit meinem php-Session-Management. In Zeile 32 //*** if (($sql_c == $usrname) and ($sql_i! = ""))

    Die Session-Geschichte habe ich mir jetzt gar nicht angesehen, aber den Operator nicht gleich ( != ) darf man nicht mit einem Leerzeichen zwischen Ausrufezeichen und Gleichheitszueichen schreiben. Dann wird das Gleichheitszeichen nämlich als Zuweisung geparst.

    Liebe Grüße

    Tom

  2. Hallo,

    Hi

    ich hab' mal wieder ein Problem mit meinem php-Session-Management. In Zeile 32 //*** if (($sql_c == $usrname) and ($sql_i! = ""))
      {
       $abfrage = "UPDATE sessions SET userid = $sql_i WHERE sid ='$sid'";***// wird die Fehlermeldung ausgegeben : " Parse error in Zeiele 32 in (url der php-Datei)"

    Mehr leider nicht. Ich vermute es liegt aber an der Variable $sql_i. Das folgende Skript ist ein Baustein zur Ermittlung der Sessions beim Userlogin. Die Daten werden aus einer SQL-Datenbank ausgelesen. Für den User aus der Tabelle "benutzer". Die Sessions-Einträge werden in der Tabelle "sessions" registiert. Leider gibt`s da immer noch ein kleines Problem beim Eintrag der User-Id, den da wird auf Grund des Fehlers kein Eintrag in der dafür vorgesehenen Spalte hinterlegt.

    Hier das Skript in ganzer Länge :
    (Zum Hintergrund =
    setup.inc : Setup-Variablen; func_db.inc : Verbindung zur SQl-Database)

    <?php

    include("setup.inc");
    include("func_db.inc");

    // Verbindung herstellen
    $sql_con = dbconnect();
    $abfrage = "SELECT $id,$name,$pass FROM $user WHERE $name = '$usrname' and $pass = '$pwd';

    // SQL-Abfrage
    $Query_Result = mysql_query($abfrage,$sql_con);
    $sql_row = @mysql_fetch_array($Query_Result);
    $sql_c=$sql_row[$name];
    $sql_i=$sql_row[$id];

    // Auslesen aus Datenbank
    if (($sql_c == $usrname) and ($sql_i! = ""))
      {
       $abfrage = "UPDATE sessions SET userid = $sql_i WHERE sid ='$sid'";
       $Query_Result = mysql_query($abfrage,$sql_con);
       }
       else
       {
       echo"<meta http-equiv=Refresh content='0; URL=$login?sid=$sid'>";
      }

    ?>

    hast du eine Page, wo man sich mal den Error anschauen könnte?

    Danke schon mal für Eure Hilfe. Gruss Jessica

    Gruß,
    Benne

  3. Hallo jessica,

    $abfrage = "UPDATE sessions SET userid = $sql_i WHERE sid...
                                            ^^^^^^^^
    Könnte es sein, dass das in Anführungszeichen gehört? userid='$sql_i'

    Grüße aus Würzburg
    Julian