X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Странность с обычным запросом
Licoric
Licoric
Topic Starter сообщение 31.10.2010, 16:07; Ответить: Licoric
Сообщение #1


Запрос:
select * from tur_user where login = 0
выводит все записи.

Запрос:
select * from tur_user where login = 1
выводит "ноль строк".

Запрос:
select * from tur_user where login = asdf
выводит ошибку #1054 - Unknown column 'asdf' in 'where clause'

Таблица:
http://img178.imageshack.us/img178/3618/sql.png
ps в таблице в поле логина нет значений 0 или 1. С 5-й записи и до 37 (всего 37) - одинаковые записи.
Суть в том, что делаю что-то типа проверки свободности логина. Запрос типа where login = $login. Ошибку рисует (ошибка выше). Начал делать запрос через базу на прямую - такая вот фигня получается. Собственно что я делаю не так?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 31.10.2010, 16:30; Ответить: alexdrob
Сообщение #2


а так
select * from `tur_user` where `login` = '1'
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Mulder_hb
Mulder_hb
сообщение 31.10.2010, 19:21; Ответить: Mulder_hb
Сообщение #3


Всегда экранируйте имена таблиц, столбцов и данные для сравнения, чтобы не пересекнуться со служебными словами мускуля.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Licoric
Licoric
Topic Starter сообщение 1.11.2010, 11:01; Ответить: Licoric
Сообщение #4


It works)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Licoric
Licoric
Topic Starter сообщение 1.11.2010, 14:20; Ответить: Licoric
Сообщение #5


Опять непонятка.
Суть: берем id и ключик активации. По ИД делаем запрос к базе, что бы выцепить логин и мыло. По мд5 хэшу этой операции берем этот самый активационный код. Далее его сравниваем с кодом, что пришел к нам средствами GET запроса. Если сходится, то меняем в базе 0 на 1.
Код:
[php]<?php
include ("../header.php");
// так выглядит ссылка:
// http://www.***.*/user/activated.php?id=�...$activ_key
$id = (int)($_GET['id']);
$activ_key = $_GET['activ_key'];
// берем из базы нужные данные
$query = "SELECT * FROM `".$prefix."_user` where `id` = $id";
$res = mysql_query($query) or die(mysql_error());
while ($row = mysql_fetch_array($res))
{
// нужны логин и почта (повтор генерации кода)
$login = $row['login'];
$mail = $row['email'];
}
// Сравниваем их
if ($activ_key == md5($login.$mail))
{
// если сходятся, то меняем 0 на 1 (активация аккаунта)
$query_active = "UPDATE `".$prefix."_user` SET activ = '1' WHERE id = '$id'";
$result_activ = mysql_query ($query_active, $link);
// Недопустимый запрос:
if (!$result_activ)
die ("<br>Недопустимый запрос: " . mysql_error(). "<br>".$query_active);
// успешная активация аккаунта:
echo "Ваш аккаунт ($login) успешно активирован!";}
// если коды не совпадают:
else
{echo "Ошибка активации.";}
include ("../footer.php");
?>[/php]Собственно ошибка:
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /var/www/vhosts/*.*/httpdocs/user/activated.php on line 21

Недопустимый запрос:
UPDATE `tur_user` SET activ = '1' WHERE id = '1'
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Licoric
Licoric
Topic Starter сообщение 1.11.2010, 14:26; Ответить: Licoric
Сообщение #6


***UPD
Если этот запрос выполнить отдельно в базе, то он работает.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 1.11.2010, 14:41; Ответить: alexdrob
Сообщение #7


В ошибке не написанно что запрос не верный, написанно что $link не является правильной ссылкой на mysql
[PHP]$result_activ = mysql_query ($query_active, $link);[/PHP]
так попробуйте
[PHP]$result_activ = mysql_query ($query_active);[/PHP]

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Странность при переходе на др хостинг
17 jonny11 7058 22.5.2010, 21:33
автор: -ottaviano-


 



RSS Текстовая версия Сейчас: 8.3.2021, 23:21
Дизайн