Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Опять глюк с сессиями
Форумы портала PHP.SU » » HTTP и PHP » Опять глюк с сессиями

Страниц (1): [1]
 

1. McLotos - 26 Мая, 2011 - 09:26:00 - перейти к сообщению
Как сделать чтобы при входе на страницу вытягивались данные того пользователя, к которому я зашёл?
Сейчас сделано так
PHP:
скопировать код в буфер обмена
  1. if (isset($_GET['id'])) {
  2.         $id =$_GET['id'];
  3. } else { echo "<p class='block' style='color:red'>You have come to a page without an argument!<a href='index.php'>Home</a></p>";}
  4. if (!preg_match("|^[\d]+$|", $id)) {echo "<p class='block' style='color:red'>Invalid request format! Check URL <a href='index.php'>Home</a></p>";}
  5. $result = mysql_query("SELECT users.lastname,users.firstname,Stats.* FROM users,Stats WHERE id=$id");
  6. $myrow = mysql_fetch_array($result);

В результате из таблицы Users вфтягиваются Имя и Фамилия пользователя, а вот таблица Stats выдаёт мне данные, которые относятся к моему аккаунту, а нужно чтобы показывалась информация о пользователе.
2. morosit - 26 Мая, 2011 - 09:41:37 - перейти к сообщению
хм, а причем здесь сессий

Может разделить запрос, на users и stats
3. McLotos - 26 Мая, 2011 - 09:46:23 - перейти к сообщению
как это разделить запрос?
4. morosit - 26 Мая, 2011 - 09:51:39 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $result = mysql_query("SELECT users.lastname,users.firstname FROM users WHERE id=$id");
  2. $result1 = mysql_query("SELECT Stats FROM Stats WHERE id=$id");

примерно так
5. molchun201 - 26 Мая, 2011 - 09:52:45 - перейти к сообщению
Ты хочешь чтобы по id_сессии идентифицировался юзер?
включаем логику и думаем Не понял
6. McLotos - 26 Мая, 2011 - 09:54:38 - перейти к сообщению
morosit пишет:
PHP:
скопировать код в буфер обмена
  1. $result = mysql_query("SELECT users.lastname,users.firstname FROM users WHERE id=$id");
  2. $result1 = mysql_query("SELECT Stats FROM Stats WHERE id=$id");

примерно так

Предложенная конструкция ничего не даст.
7. morosit - 26 Мая, 2011 - 09:55:36 - перейти к сообщению
molchun201
айди сессий передается через GET Не понял
(Добавление)
McLotos пишет:
Предложенная конструкция ничего не даст.

Это может помочь найти ошибку, ничего более
8. McLotos - 26 Мая, 2011 - 09:58:20 - перейти к сообщению
molchun201 пишет:
Ты хочешь чтобы по id_сессии идентифицировался юзер?
включаем логику и думаем Не понял

С этого места по подробнее... =)
Хотя не совсем так. Понимаешь, у меня 2 режима просмотра страницы пользователя, в первом варианте всё работает нормально, а вот во втором варианте, который основной, не работает ничего. Т.е. когда я захожу на страницу пользователя, мне показывается только его имя и фамилия, а все остальные данные заменены моими, которые висят в моей сессии. В результате на какую бы страницу я не зашёл, меняются только имя и фамилия, а всё остальное абсолютно одинаковое

id сессии не передаётся через get, в get указывается id юзера, на чью страницу я зашёл
9. molchun201 - 26 Мая, 2011 - 10:09:58 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. // До этого считай пользователь заполнил форму, в которой $login и $password
  3. $result = mysql_query("SELECT lastname, firstname FROM users WHERE login='$login' AND password='$password'");
  4.  
  5. if(isset($result)){
  6.      // Вешаем сессию
  7. }else{
  8.     // Посылаем регаться
  9. }
  10.  
10. McLotos - 26 Мая, 2011 - 10:14:29 - перейти к сообщению
И? У меня это есть. Дело то не в регистрации, а при переходе на страницу к пользователю
11. molchun201 - 26 Мая, 2011 - 10:17:31 - перейти к сообщению
McLotos пишет:
И?

ну дак сразу при авторизации вешай и всё, в чём траблы то? Однако
12. morosit - 26 Мая, 2011 - 10:19:54 - перейти к сообщению
зайдем с другой стороны
McLotos пишет:
2 режима просмотра ... в первом варианте всё работает ... а вот во втором варианте ... не работает ничего

в чем между ними разница?
(Добавление)
molchun201 пишет:
в чём траблы то?

он как админ или нет, заходит на страницу не авторизованного пользователя (например) и хочет видеть его данные
13. McLotos - 26 Мая, 2011 - 10:34:04 - перейти к сообщению
Ну просто 2 разных режима просмотра, не совсем одно и то же. 1 вариант я не захожу на страницу пользователя, а просто смотрю все его данные с обеих таблиц в виде списка данных. А во втором варианте, я вхожу на страницу пользователя и делаю запрос на вывод всей имеющейся у пользователя информации, а выводится только его имя и фамилия, а все остальные данные мои.
Т.е. Все данные, которые относятся к пользователю и находятся в таблице users показываются нормально, а всё что касается этого же пользователя, но из таблицы stats не отображается, а заменяется моими данными из таблицы stats
14. morosit - 26 Мая, 2011 - 10:47:00 - перейти к сообщению
в первом и втором вариантах
1) запросы строятся по разному?
2) входящие данные разные? посылаются по разному?
3) выводятся данные поразному?

 

Powered by ExBB FM 1.0 RC1