Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (4) 1 [2] 3 4  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Как вывести имя пользователя на страницу
Comer  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 22
Пользователь №: 43234
На форуме: 3 месяца, 29 дней
Карма:




Цитата (Медведь @ 7.08.2016 - 20:50)
Что находится в 17 строке?

Это 16-я строка
$_SESSION['user'] = true;

Это 17-я строка
$_SESSION['email'] = $_POST['email'];


--------------------
Начал учить PHP+MySQL в возрасте уже за 50. Пока не жалею.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
arbuzmaster  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 720
Пользователь №: 37872
На форуме: 3 года, 4 месяца, 10 дней
Карма: 21




Цитата (Comer @ 7.08.2016 - 20:53)
Цитата (Медведь @ 7.08.2016 - 20:50)
Что находится в 17 строке?

Это 16-я строка
$_SESSION['user'] = true;

Это 17-я строка
$_SESSION['email'] = $_POST['email'];

Удали всё это! И запиши
$_SESSION['username'] = $_POST['email'];


в auth.php после проверки пароля и затем попробуй вывести в show.php

if($user === true)
{
echo '<h3>Поздравляю, Вы вошли в систему!</h3>'."\n";
print_r($_SESSION['username'] );
}


--------------------
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
arbuzmaster  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 720
Пользователь №: 37872
На форуме: 3 года, 4 месяца, 10 дней
Карма: 21




как то так например:

if(md5(md5($_POST['pass']).$row['salt']) == $row['pass'])
{
$_SESSION['user'] = true;
$_SESSION['username'] = $_POST['email'];
//Сбрасываем параметры


--------------------
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Comer  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 22
Пользователь №: 43234
На форуме: 3 месяца, 29 дней
Карма:




Цитата (arbuzmaster @ 7.08.2016 - 21:12)
Удали всё это! И запиши
$_SESSION['username'] = $_POST['email'];


в auth.php после проверки пароля и затем попробуй вывести в show.php

if($user === true)
{
echo '<h3>Поздравляю, Вы вошли в систему!</h3>'."\n";
print_r($_SESSION['username'] );
}

Опять ничего не получилось.
Notice: Undefined index: email in Z:\home\albir.test\www\scripts\auth\auth.php on line 70
В строке 70 файла auth.php написано это:
$_SESSION['username'] = $_POST['email'];

А на экране всё выглядит вот так:
user posted image


--------------------
Начал учить PHP+MySQL в возрасте уже за 50. Пока не жалею.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Comer  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 22
Пользователь №: 43234
На форуме: 3 месяца, 29 дней
Карма:




Цитата (arbuzmaster @ 7.08.2016 - 21:16)
как то так например:

if(md5(md5($_POST['pass']).$row['salt']) == $row['pass'])
  {
    $_SESSION['user'] = true;
    $_SESSION['username'] = $_POST['email'];
    //Сбрасываем параметры

А если по Вашему совету, то вот такая картина получается:
user posted image

Это сообщение отредактировал Comer - 7.08.2016 - 21:30


--------------------
Начал учить PHP+MySQL в возрасте уже за 50. Пока не жалею.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Гость_Invis1ble  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









ТС, кончай людям голову дурить. Ты показываешь код не тот, который у тебя запускается в реальности.

Цитата (Comer @ 7.08.2016 - 21:21)
В строке 70 файла auth.php написано это:

Если бы ты вставил строчку $_SESSION['username'] = $_POST['email']; туда, куда тебе написали её вставить, то текст ошибки указывал бы не на 70-ю строку, а на 57-ю.
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата
Undefined variable: row

Опять же, в коде, котором ты показал нет переменной row вообще.
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









А, по поводу переменной row - это не в твоем коде. Ну так не копируй бездумно, смотри, что в твоем коде это переменная rows
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
arbuzmaster  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 720
Пользователь №: 37872
На форуме: 3 года, 4 месяца, 10 дней
Карма: 21




Цитата
Notice: Undefined index: email in Z:\home\albir.test\www\scripts\auth\auth.php on line 70
означает, что в $_POST['email'] ничего нет, хотя перед этим она проходит проверку на пустоту, короче петушня какая то.


--------------------
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Гость_Invis1ble  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата (arbuzmaster @ 7.08.2016 - 21:48)
означает, что в $_POST['email'] ничего нет, хотя перед этим она проходит проверку на пустоту

да он код неактуальный показывает
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Comer  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 22
Пользователь №: 43234
На форуме: 3 месяца, 29 дней
Карма:




Цитата (arbuzmaster @ 7.08.2016 - 21:48)
Цитата
Notice: Undefined index: email in Z:\home\albir.test\www\scripts\auth\auth.php on line 70
означает, что в $_POST['email'] ничего нет, хотя перед этим она проходит проверку на пустоту, короче петушня какая то.

Но ведь работает же! Я просто хочу, чтобы вместе с сообщением "Поздравляю, Вы вошли в систему!" выводилось и имя пользователя. Ну, то есть, чтобы получилось так: "Поздравляю, имя пользователя! Вы вошли в систему!"


--------------------
Начал учить PHP+MySQL в возрасте уже за 50. Пока не жалею.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
arbuzmaster  
[x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 720
Пользователь №: 37872
На форуме: 3 года, 4 месяца, 10 дней
Карма: 21




у тебя такой auth.php ?

<?php
/**
* Обработчик формы авторизации
* Site:
http://bezramok-tlt.ru
* Авторизация пользователя
*/


//Ключ защиты
if(!defined('BEZ_KEY'))
{
header("HTTP/1.1 404 Not Found");
exit(file_get_contents('./../../404.html'));
}

//Если нажата кнопка то обрабатываем данные
if(isset($_POST['submit']))
{
if(empty($_POST['email']))
$err[] = 'Не введен Логин';

if(empty($_POST['pass']))
$err[] = 'Не введен Пароль';

//Проверяем наличие ошибок и выводим пользователю
if(count($err) > 0)
echo showErrorMessage($err);
else
{
/*Создаем запрос на выборку из базы
данных для проверки подлиности пользователя*/

$sql = 'SELECT *
FROM `'
. BEZ_DBPREFIX .'reg`
WHERE `login` = "'
. escape_str($_POST['email']) .'"
AND `status` = 1'
;
$res = mysqlQuery($sql);

//Если логин совподает, проверяем пароль
if(mysql_num_rows($res) > 0)
{
//Получаем данные из таблицы
$row = mysql_fetch_assoc($res);

if(md5(md5($_POST['pass']).$row['salt']) == $row['pass'])
{
$_SESSION['user'] = true;

//Сбрасываем параметры
header('Location:'. BEZ_HOST .'less/reg/?mode=auth');
exit;
}
else
echo showErrorMessage('Неверный пароль!');
}
else
echo showErrorMessage('Логин <b>'. $_POST['email'] .'</b> не найден!');
}

}


?>


--------------------
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Comer  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 22
Пользователь №: 43234
На форуме: 3 месяца, 29 дней
Карма:




Цитата (Гость_Invis1ble @ 7.08.2016 - 21:53)
Цитата (arbuzmaster @ 7.08.2016 - 21:48)
означает, что в $_POST['email'] ничего нет, хотя перед этим она проходит проверку на пустоту

да он код неактуальный показывает

Я показываю полные коды файлов show.php и auth.php


--------------------
Начал учить PHP+MySQL в возрасте уже за 50. Пока не жалею.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Comer  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 22
Пользователь №: 43234
На форуме: 3 месяца, 29 дней
Карма:




Цитата (arbuzmaster @ 7.08.2016 - 21:55)
у тебя такой auth.php ?

Да, такой.


--------------------
Начал учить PHP+MySQL в возрасте уже за 50. Пока не жалею.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Comer  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 22
Пользователь №: 43234
На форуме: 3 месяца, 29 дней
Карма:




Цитата (arbuzmaster @ 7.08.2016 - 21:55)
у тебя такой auth.php ?

А-аа, нет, не такой. Вот какой:
<?php
/**
* Обработчик формы авторизации
* Site:
http://bezramok-tlt.ru
* Авторизация пользователя
*/


//Выход из авторизации
if(isset($_GET['exit']) == true){
//Уничтожаем сессию
session_destroy();

//Делаем редирект
header('Location:'. BEZ_HOST .'?mode=auth');
exit;
}

//Если нажата кнопка то обрабатываем данные
if(isset($_POST['submit']))
{
//Проверяем на пустоту
if(empty($_POST['email']))
$err[] = 'Не введен Логин';

if(empty($_POST['pass']))
$err[] = 'Не введен Пароль';

//Проверяем email
if(emailValid($_POST['email']) === false)
$err[] = 'Не корректный E-mail';

//Проверяем наличие ошибок и выводим пользователю
if(count($err) > 0)
echo showErrorMessage($err);
else
{
/*Создаем запрос на выборку из базы
данных для проверки подлиности пользователя*/

$sql = 'SELECT *
FROM `'
. BEZ_DBPREFIX .'reg`
WHERE `login` = :email
AND `status` = 1'
;
//Подготавливаем PDO выражение для SQL запроса
$stmt = $db->prepare($sql);
$stmt->bindValue(':email', $_POST['email'], PDO::PARAM_STR);
$stmt->execute();

//Получаем данные SQL запроса
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);

//Если логин совподает, проверяем пароль
if(count($rows) > 0)
{
//Получаем данные из таблицы
if(md5(md5($_POST['pass']).$rows[0]['salt']) == $rows[0]['pass'])
{
$_SESSION['user'] = true;

//Сбрасываем параметры
header('Location:'. BEZ_HOST .'?mode=auth');
exit;
}

else
echo showErrorMessage('Неверный пароль!');
}else{
echo showErrorMessage('Логин <b>'. $_POST['email'] .'</b> не найден!');
}
}
}

?>


--------------------
Начал учить PHP+MySQL в возрасте уже за 50. Пока не жалею.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (4) 1 [2] 3 4  Ответ в темуСоздание новой темыСоздание опроса