сравнивая поле из базы данных с целым числом в php - PullRequest
1 голос
/ 26 октября 2011

Я вытащил имена пользователей и пароли из базы данных, и они совпадают, я могу пропустить страницу входа. Но я хочу ограничить некоторый доступ для пользователей и предоставить доступ администраторам, я делаю это с полем admin в базе данных. admin равно int и может иметь значения 1 и 0. Этот код всегда вводит else barnch этого if ($result == '1').

Это действительно раздражает, не могли бы вы дать некоторые подсказки?

$sql="SELECT admin FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";

$result=mysql_query($sql);


if(mysql_num_rows($result) == 1) {
     $_SESSION['username'] = $_POST['username'];
     if ($result == '1'){
      echo "uspeh admine";
     }else{
      echo "uspeh korisnice";
     }

 }else{
    echo "neuspeh";
 }

Ответы [ 2 ]

2 голосов
/ 26 октября 2011

$result - ресурс для результатов.Вам нужно использовать mysql_fetch_assoc() или аналогичный.

$row = mysql_fetch_assoc($result);
if ($row['admin'] == '1') {
  echo "uspeh admine";
} else { 
  echo "uspeh korisnice";
}
0 голосов
/ 26 октября 2011

Вам необходимо получить массив результатов запроса:

$row = mysql_fetch_assoc($result);

echo $row['some_key_maybe_id'];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...