|
|
|
| Сразу Спасибо за книгу "PHP практика создания web-сайтов 2-е издание".
до этого с php сталкивался не часто, поэтому немного сложновато осваивать, наверное надо начать с самоучителя...
А вопрос вот в чём: нужно отображение пользовательской информации в top.php при регистрации или входе на сайт, всегда выдаёт "Привет гость! Пожалуйста пройди регистрацию!" в чём моя ошибка??
if($_SESSION['id_user'])
{$query = "SELECT name,school,klass,dateregister FROM $tbl_users WHERE id_position = ".$_SESSION["id_user"]."";
$ar = mysql_query($query);
$usr = mysql_fetch_array($ar);
echo "Привет ".$usr['name']."<br>";
echo "Школа ".$usr['school']."<br>";
echo "Класс ".$usr['klass']."<br>";
echo "Дата регистрации ".$usr['dateregister']."<br>";}
else{echo "Привет гость! Пожалуйста пройди регистрацию!";}
|
запрос к базе вроде правильный может не через сессию?? | |
|
|
|
|
|
|
|
для: sdnk
(15.09.2009 в 10:05)
| | Не вижу session_start(); | |
|
|
|
|
|
|
|
для: mihdan
(15.09.2009 в 10:12)
| | session_start(); есть выше просто не указал | |
|
|
|
|
|
|
|
для: sdnk
(15.09.2009 в 10:05)
| | так судя по всему сессии нет и авторизацию надо пройти.
ищите где вы потеряли $_SESSION['id_user'] или где в него идёт запись | |
|
|
|
|
|
|
|
для: MikeSVB
(15.09.2009 в 10:13)
| |
// Вход на сайт
$_SESSION['name'] = $form->fields['name']->value;
$_SESSION['id_user'] = mysql_insert_id();
// Осуществляем редирект на страницу, сообщающую
// об успешной регистрации
header("Location: register_success.php");
exit();
}
}
// Подключаем верхний шаблон
$pagename = "Регистрация на сайте";
$keywords = "Регистрация на сайте";
require_once ("templates/top.php");
|
это из register.php здесь полагаю и идёт запись, а вот сюда templates/top.php и должна выводиться информация | |
|
|
|
|
|
|
|
для: sdnk
(15.09.2009 в 11:12)
| | Самый простой способ посмотреть, что находится в массиве, это пропустить его через функцию print_r()
<?php
echo "<pre>";
print_r($_SESSION);
echo "</pre>";
?>
|
Последовательно проверяйте на каждой странице, есть в массиве id_use и чему он равен и где происходит сбой. Бывает так, что пользователь зарегистрировался на www.site.ru, а потом его перебрасывает на site.ru (без www) - это разные домены и cookie (а номер сессии передается через них) одного домена не совместимы с другим (если явно не указать, чтобы они были совместимы). | |
|
|
|
|
|
|
|
для: cheops
(15.09.2009 в 12:50)
| | Сапасибо большое лично Вам и всем кто откликнулся.
Проблема решена, просто по недосмотру вместо id_user_position было id_user, print_r помогла.
Ещё раз спасибо! | |
|
|
|