Gegen Bilderklau - Das Original (https://www.gegen-bilderklau.net/index.php)
- Design, Website, Copyright (https://www.gegen-bilderklau.net/board.php?boardid=80)
--- Homepagehilfe (https://www.gegen-bilderklau.net/board.php?boardid=27)
---- Homepagehilfe - Archiv (https://www.gegen-bilderklau.net/board.php?boardid=139)
----- [PHP & MySQL] Problem mit Sessions (https://www.gegen-bilderklau.net/thread.php?threadid=128384)


Geschrieben von SammyLG am 11.02.2008 um 18:53:

  Problem mit Sessions

Bin gerade am coden, und da ich noch lerne, hab ich erstmal den Code aus dem Buch genommen. Aber es kommt eine Fehlermeldung. Das ist der Code:

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
<?php
if (!empty($_POST['user']) && !empty($_POST['pw'])) {
  if (SID != "") { // SID ungleich Leerstring
    $status_no "<p>Bitte schalte Cookies ein!</p>";
  } else {
    $user trim($_POST['user']);
    $pw trim($_POST['pw']);
    $pw md5($pw);
    $loginsql "SELECT user, pw FROM userlogin
WHERE user='$user' AND pw='$pw'";
    $result mysql_query($loginsql);
    if (mysql_num_rows($result) == 1) {
      $_SESSION['login'] = true;
      $status_yes "<p>Du bist eingeloggt als <strong>$user</strong>!</p>";
      if (isset($_POST['keep']) && $_POST['keep'] == 1) {
        setCookie("keep4u""l5_ZrX8"time()+86400*3);
        $status_yes "<p>Du bist dauerhaft eingeloggt als <strong>$user</strong>!</p>";
      }
    } else {
      $_SESSION['login'] = false;
      $status_no "<p>Einloggdaten nicht korrekt!</p>";
    }
  }
}
?>


Und die Fehlermeldung:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/web103/html/windsong/loginmaker.inc.php on line 12

Ich hab echt keine Ahnung warum das nicht funktioniert, ich wollte es eigentlich nur erstmal ausprobieren. Kann mir jemand helfen?

LG, Sammy



Geschrieben von .Maybe am 11.02.2008 um 22:27:

 

kA obs daran liegt, aber wenn mans logisch betrachtet wird hier eine Variabel zweimal vergeben:
$pw = trim($_POST['pw']);
$pw = md5($pw);
versuchs mal so:
$pwx = trim($_POST['pw']);
$pw = md5($pwx);

Edit: Lass dir mal $result ausgeben



Geschrieben von cll am 12.02.2008 um 16:07:

 

Die Abfragezeile ist nicht korrekt. setze anstatt nur '$pw' mal '".$pw."' ein! bei $user natürlich genauso. Dann klappts!

Außerdem: ich hoffe du hast die spalte "user" als unique gekennzeichnet? dann können namen nicht doppelt vorkommen.

ungewöhnliche methode dein abruf... klappt aber auch.


Forensoftware: Burning Board, entwickelt von WoltLab GmbH