[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Прошу у вас скорой помощи
Jimmbo
Цитата
$result = mysql_query("SELECT * FROM users WHERE em='$login'",$db); //извлекаем из базы все данные о пользователе с введенным логином
$myrow = mysql_fetch_array($result);
if (empty($myrow['password']))
{
//если пользователя с введенным логином не существует
exit ("Извините, но такого пользователя не существует.");
}


До этого со всем справлялся сам, сейчас же - не выходит.
Проблема в том, что когда авторизовываюсь, пишет - Извините, но такого пользователя не существует. Однако он есть.

БД:
"eu" - название столбца логинов.
"pw" - название столбца паролей.

Что делаю не так? Помогите.



Спустя 18 минут, 23 секунды (5.10.2011 - 14:08) imbalance_hero написал(а):
Jimmbo
eu или em?
pw или password

Такое никогда бы не работало! smile.gif

Спустя 2 минуты, 35 секунд (5.10.2011 - 14:11) XCross написал(а):
$result = mysql_query("SELECT * FROM `users` WHERE `em` = '".mysql_real_escape_string($login)."'") or die(mysql_error()); //извлекаем из базы все данные о пользователе с введенным логином

if(mysql_num_rows($result) == 0){
echo 'Такого пользователя нет.';
}else{
$userArray = mysql_fetch_assoc($result);

$userLogin = $userArray['em'];
$userPassword = $userArray['pw'];
}

Спустя 11 минут, 11 секунд (5.10.2011 - 14:22) Jimmbo написал(а):
kmaks, спасибо большое. Он проверяет логин, пароль не проверяет. Было бы классно, если бы он еще и пароль проверил. Сегодня первый день в это все залез. Голова кипит ... unsure.gif

Спустя 2 минуты, 54 секунды (5.10.2011 - 14:25) imbalance_hero написал(а):
WHERE `em` = login AND `pw` = password - такое условие при выборке.

Спустя 5 минут, 28 секунд (5.10.2011 - 14:30) Jimmbo написал(а):
Всем спасибо большое smile.gif Получилось.

Спустя 11 минут, 2 секунды (5.10.2011 - 14:41) imbalance_hero написал(а):
В следующий раз создавай адекватное название темы. Тема должна передавать суть вопроса.

Спустя 1 минута, 57 секунд (5.10.2011 - 14:43) Jimmbo написал(а):
eu почта
my число
bs число
gs число
ws число
fd число

Нужно вывести параметры пользователя из БД, который авторизовался, как это осуществить?

Цитата
В следующий раз создавай адекватное название темы. Тема должна передавать суть вопроса.

Хорошо, но пока вопросов много, можно в этой теме все задавать?

Спустя 3 минуты, 8 секунд (5.10.2011 - 14:46) imbalance_hero написал(а):
echo $myrow['my']; в чём проблема?

Спустя 7 минут, 51 секунда (5.10.2011 - 14:54) Jimmbo написал(а):
Цитата
echo $myrow['my']; в чём проблема?


не хочет выводить sad.gif

Цитата
// подключаемся к базе
include ("bd.php");// файл bd.php должен быть в той же папке, что и все остальные, если это не так, то просто измените путь

$result = mysql_query("SELECT * FROM `users` WHERE `em` = '".mysql_real_escape_string($login)."' AND `pw` = '".mysql_real_escape_string($password)."'") or die(mysql_error()); //извлекаем из базы все данные о пользователе с введенным логином

if(mysql_num_rows($result) == 0){
    echo 'Такого пользователя нет.';
}else{
    $userArray = mysql_fetch_assoc($result);

    $userLogin    = $userArray['em'];
    $userPassword = $userArray['pw'];
echo $myrow['my'];
}
?>


Цитата
в чём проблема?

В этом:

Цитата
Сегодня первый день в это все залез. Голова кипит ...

Еще если я не ошибаюсь, нужно указать, какого пользователя информацию выводить, а как это сделать, я не бум-бум. Балин...

Спустя 6 минут, 38 секунд (5.10.2011 - 15:01) imbalance_hero написал(а):
Что значит $myrow ? ты же fetch_assoc используешь.. и там ДРУГАЯ переменная, отличная от той, что была в самом начале, отличается от myrow.

Спустя 12 минут, 9 секунд (5.10.2011 - 15:13) Jimmbo написал(а):
imbalance_hero, понял tongue.gif
Теперь требуется сделать математические операции (это я сам) и записать полученное число в БД. Как это сделать? Это наверное последний вопрос на сегодня. rolleyes.gif

Спустя 2 минуты, 4 секунды (5.10.2011 - 15:15) imbalance_hero написал(а):
mysql_query("UPDATE ..."); но у нас тут не учебник, мы лишь помогаем исправить неправильное, если ты не знаешь, как делается update, то тебе надо читать мануалы или учебники.

Спустя 31 минута, 39 секунд (5.10.2011 - 15:47) Jimmbo написал(а):
Цитата
mysql_query("UPDATE `users` SET `my`='$my'");

Разобрался, спасибо imbalance_hero.

Спустя 42 минуты, 32 секунды (5.10.2011 - 16:29) imbalance_hero написал(а):
mysql_query("
UPDATE `users` SET
`my` = '"
.mysql_real_escape_string($my)."'
"
) or die(mysql_error());

Спустя 1 час, 51 минута, 54 секунды (5.10.2011 - 18:21) Jimmbo написал(а):
Ох, замучился я...
Еще две проблемы. Первая - при сохранении данных пользователя в переменную БД, эта переменная редактируется у всех пользователей.
Цитата
mysql_query("
    UPDATE `users` SET
    `my` = '".mysql_real_escape_string($my)."'
") or die(mysql_error());
Нужно как-то указать строчку авторизованного пользователя, а не строчки my всех пользователей БД. ph34r.gif

Вторая - при обновлении страницы данные формы отправляются снова. Решил я это так. Поставил ридерект на страницу, на которой ридерект на форму авторизации. Поэтому приходится после каждой операции авторизовываться заново. Знаю, что проблема решается с помощью COOKIES, но во всех мануалах, что я нашел, написано так, чтобы тот кто знал, тот не забыл, а не чтобы тот, кто не знал, выучил... : huh.gif

Спустя 22 часа, 12 минут, 46 секунд (6.10.2011 - 16:34) Jimmbo написал(а):
Вторую задачу решил. Осталась первая. Жду вашей помощи rolleyes.gif

Спустя 33 минуты, 37 секунд (6.10.2011 - 17:07) imbalance_hero написал(а):
Jimmbo
WHERE указывай, у какого именно редактируешь.

Спустя 1 минута, 47 секунд (6.10.2011 - 17:09) Jimmbo написал(а):
Цитата
mysql_query ("UPDATE `users` SET `my` = '$my' WHERE `users`.`id` = '$id' LIMIT 1);


Не выходит ... ph34r.gif

Спустя 2 часа, 12 минут, 10 секунд (6.10.2011 - 19:21) imbalance_hero написал(а):
LIMIT не нужен тут. $id - что там?
mysql_query("запрос") or die(mysql_error());

Спустя 9 минут, 47 секунд (6.10.2011 - 19:31) Jimmbo написал(а):
Parse error: syntax error, unexpected T_STRING in /home/users2/d/.../domains/.../games/testreg.php on line 92

Ошибка.

Цитата
  mysql_query("UPDATE `users` SET `my` = '". $my ."' WHERE `users`.`id` = '". $id . "') or die(mysql_error());

Спустя 2 минуты, 14 секунд (6.10.2011 - 19:33) Jimmbo написал(а):
$id = $userArray['id'];
При выводе ниже $id, выводит "1", следовательно тут все правильно... blink.gif

Спустя 30 минут, 8 секунд (6.10.2011 - 20:03) imbalance_hero написал(а):
Jimmbo
`id` = ' ". ." ' " смотри на количество кавычек!

Спустя 10 минут, 45 секунд (6.10.2011 - 20:14) Jimmbo написал(а):
imbalance_hero, благодарю! smile.gif


_____________
Оскорбления — это обычные доводы тех, кто неправ @ Жан-Жак Руссо
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.