Login.php

    // Create query
  $q = "SELECT * FROM `dbUsers` "
        ."WHERE `username`='".$_POST["username"]."' "
        ."AND `password`=PASSWORD('".$_POST["password"]."') "
        ."LIMIT 1";
  // Run query
  $r = mysql_query($q);

  if ( $obj = @mysql_fetch_object($r) )
        {
        // Login good, create session variables
        $_SESSION["valid_id"] = $obj->id;
        $_SESSION["valid_user"] = $_POST["username"];
        $_SESSION["valid_time"] = time();

        // Redirect to member page
        Header("Location: members.php");
        }
  else
        {
        // Login not successful
        die("Sorry, could not log you in. Wrong login information.");
        }
  }
        else
  {
//If all went right the Web form appears and users can log in
  echo "<form action=\"?op=login\" method=\"POST\">";
  echo "Username: <input name=\"username\" size=\"15\"><br />";
  echo "Password: <input type=\"password\" name=\"password\" size=\"8\"><br />";
  echo "<input type=\"submit\" value=\"Login\">";
  echo "</form>";
  }
        ?>

Не удалось войти с указанным выше кодом. ошибка в if ( $obj = @mysql_fetch_object($r)) сообщение об ошибке для приведенного выше кода: Возможно случайное присвоение, следует избегать присвоений в условиях

0
PHPNewbie 13 Мар 2011 в 04:20
4
Я добавил для вас форматирование в ваш код. Однако, кажется, вы забыли задать вопрос. Не могли бы вы отредактировать свой пост, включив в него вопрос, на который мы можем ответить? Спасибо!
 – 
Charles
13 Мар 2011 в 04:23
2
-1: дубликат вашего предыдущего вопроса
 – 
Pekka
13 Мар 2011 в 04:26
Я не уверен, что это точная копия, код здесь совсем другой. @jyj, эта ошибка не настоящая ошибка, это предупреждение от вашей IDE. Избавьтесь от ВСЕХ операторов подавления ошибок @ и повторите попытку. И, э-э, блин, этот вопрос теперь, видимо, закрыт. Ах хорошо.
 – 
Charles
13 Мар 2011 в 04:29
Что касается вашего обновления, вы можете игнорировать это сообщение в этом контексте. Чтобы избавиться от него, выполните $obj = mysql_fetch_object($r); if ($obj) ...
 – 
Pekka
13 Мар 2011 в 04:31
Учитывая редактирование OP, его следует открыть снова.
 – 
Ted Hopp
13 Мар 2011 в 04:31

1 ответ

Этот последний else плохо вложен в if/else. Есть два других и только 1 if.

0
SpliFF 13 Мар 2011 в 04:45