2013-03-23 4 views
2

Я работаю над сценарием «Показать онлайн-пользователя», где скрипт показывает всех, кто находится в сети. Теперь я хочу удалить запись, которая соответствует имени пользователя сеанса, то есть «если (онлайн-пользователь = имя пользователя сеанса), то не отображать его, так же, как в чате facebook.com, где отображается идентификатор ваших друзей, а не ваш собственный идентификатор мой код выглядит следующим образом:MySQL, PHP: Скрыть определенное значение из таблицы

<?php 
    mysql_connect("localhost","root","12345"); 
    mysql_select_db("accounts"); 
    $user = $_SESSION['user_name']; 
    $result = mysql_query("SELECT * FROM online * WHERE ($chat<>$user)"); 

    while($row=mysql_fetch_array($result)) { 
     $chat=$row["emp_name"]; 
     $chlk = ("<a href=javascript:void(0) onclick=javascript:chatWith('$chat')>$chat</a>"); 
     $chs = ("<a>$chat</a>"); 
     if ($chat <> $user) { 
     echo $chlk; 
     } 
     else { 
     echo $chs; 
     } 
    echo $chlk; 
} 
?> 

Я получаю следующее сообщение об ошибке:.

Notice: Undefined variable: chat in localhost/accounts/removeuser.php on line 7

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given localhost/accounts/removeuser.php on line 9 

Любая помощь высоко ценится

+0

убедитесь, что '$ result' не имеет булево .... код акции для' $ result' –

+1

Я думаю, ваша проблема заключается в "removeuser.php" строка 9 ... –

ответ

1

Исправление в запросе.

"SELECT * FROM online WHERE ($chat<>$user)" 

ИЛИ

Заменить в запросе$chat с именем таблицы field.

есть дополнительные * перед тем, как WHERE это недействительно.

и $chat не определен в query.

+0

Я попробовал исправление, но сценарий по-прежнему дает ту же ошибку, вы могли бы порекомендовать скрипт, где все пользователи отображаются, кроме пользователя, просматривающего список? –

+0

'' SELECT * FROM online WHERE username! = '". $ _ SESSION [' loggedInUser ']."' "' –

+0

thanx я получил его, но не так, как вы сказали, я использовал не как .. 'SELECT * FROM онлайн WHERE emp_name НЕ НРАВИТСЯ '% $ user%' "' –

0

<> не является PHP, насколько я знаю. Вам нужно использовать !==.

(и, вероятно, читать на некоторых основ PHP ...)

Смежные вопросы