антифлуд

Печать RSS
310

М
Автор
Пришелец
0
Всем привет! помогите пожалуйста правильно сформулировать запрос к бд.
Нужно 1. просмотреть последнюю строчку в таблице 2. сравнить в ней name=$_post['name'] и msg=$_post['msg'] 3. если совпадение имеется значит выводим 1 если нет 0.
пробовал так
select count(*) from book where name='$_post[name]' and msg='$_post[msg]' order by id desc limit 1
ну из этого не чего не вышло т.к. он просто начинает искать последнее совподение
а мне нужно сравнить именно последнюю строку
K

Чатланин
0
$q = mysql_query("SELECT * FROM `book` WHERE `name`='".$_post[name]."' and `msg`='".$_post[msg]."' LIMIT 1;");
if (mysql_num_rows($q) > 0)
{
твои функции
}

Только $_POST фильтруй.
М
Автор
Пришелец
0
это тоже пробовал

Добавлено через 04:46 сек.
получится что он будет искать первое совпадение, даже логически видно
Изменил: Михаил (12.07.2014 / 09:20)
Ю

deleted
0
Deleted

Добавлено через 02:40 сек.
А не проще, например, записывать в сессию дату отправки последнего сообщения и проверять при отправке сообщений, сколько времени прошло?
Изменил: юЮЮфюв (12.07.2014 / 09:27)
S

Пришелец
0
если в сообщение пишется время, то перед записью сравнивай сообщения и проверяй время (пару минут от записи) и тогда выводи ошибку
K

Чатланин
0
Mishutka (12 Июля 2014 / 09:17)
это тоже пробовал

Добавлено через 04:46 сек.
получится что он будет искать первое совпадение, даже логически видно

Пиши время в БД и сверайте по времени тогда.
Изменил: karpov-ml (12.07.2014 / 10:18)
S

Чатланин
0
$sql = 'SELECT IF(`name`="'.$_post[name].'" AND `msg`="'.$_post[msg].'",1,0) as `result` FROM `book` ORDER by `id` DESC LIMIT 1'
"result" - 0 или 1
М
Автор
Пришелец
0
7. Слеэр-химера, не прокатило)
К

Айсберг Визави
0
8. Mishutka, в вопросе всегда есть кусок ответа)

Алгоритм:
1. Смотрим последнюю строку SELECT MAX(id) FROM book;
2. Сравниваем переменные $name и $msg с соответствующими записями в строке

SELECT * FROM book WHERE id = (SELECT MAX(id) FROM book) AND name = '$name' AND msg = '$msg'
М
Автор
Пришелец
0
Кевин Митник_HHTeam (14 Июля 2014 / 02:56)
8. Mishutka, в вопросе всегда есть кусок ответа)

Алгоритм:
1. Смотрим последнюю строку SELECT MAX(id) FROM book;
2. Сравниваем переменные $name и $msg с соответствующими записями в строке

SELECT * FROM book WHERE id = (SELECT MAX(id) FROM book) AND name = '$name' AND msg = '$msg'
красавчик! это лучший ответ +1 тебе
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск