Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Сравнение инфы введенную в форме с базой mysql

Сообщения:  [1-10]    [11-20]  [21-23] 

 
 автор: Habl   (07.08.2012 в 10:12)   письмо автору
 
   для: confirm   (07.08.2012 в 08:46)
 

Ясно, буду пробовать.. Большое спасибо за помощь, если что еще обращусь.

  Ответить  
 
 автор: confirm   (07.08.2012 в 08:46)   письмо автору
 
   для: Habl   (07.08.2012 в 08:30)
 

Даже так? Это где я такое писал?
Я писал - если запрос возвращает строку, значит запись в базе есть, иначе (количество возвращаемых строк равно нулю) такой записи нет. И написал код - что надо проверять.
В этом есть хоть намек на то, что нужно проверять какое-то полученное значение какого-то поля с чем-то?

  Ответить  
 
 автор: Habl   (07.08.2012 в 08:30)   письмо автору
 
   для: confirm   (06.08.2012 в 15:37)
 

Вы же сами написали условие после запроса, разве не надо проверять какие строки вернул мне запрос?

  Ответить  
 
 автор: confirm   (06.08.2012 в 15:37)   письмо автору
 
   для: Habl   (06.08.2012 в 15:26)
 

Если увидели, то почему ее сюда копируете, еще и объясняя, что не получается?
Сожалею, что у вас не получается, но я не знаю, как вам еще объяснить суть, и что еще написать.
Неужели до вас никак не дойдет, что результат запроса по хэш для сообщения из формы, это и есть ответ на интересующий вас вопрос? Что достаточно проверить количество возвращаемых строк и ВСЕ, это и есть ответ? И что после запроса писать if(чего-то равно чему-то?) не нужно?
Я вам все написал, прочтите еще раз внимательно и действуйте.

  Ответить  
 
 автор: Habl   (06.08.2012 в 15:26)   письмо автору
 
   для: confirm   (06.08.2012 в 08:35)
 

Ошибку то я увидел, но реализовать у меня пока что это не получилось ... )

  Ответить  
 
 автор: confirm   (06.08.2012 в 08:35)   письмо автору
 
   для: Habl   (05.08.2012 в 22:24)
 

Ну все правильно, чего бы работало, если я в написании имени функции допустил ошибку, исправил, но поздно, вы ее уже добросовестно скопировали.
Я вам простым языком рассказывал как, и написал даже что проверять надо, а вы бог весь что делаете.
Еще раз:
1. В таблице помимо сообщений находятся и их хэш.
2. Получая форму, вычисляем хэш нового сообщения.
3. Делаем запрос в таблицу на выборку сообщения у которого хэш равен хэш нового сообщения.
4. Если запрос вернет строку значит такое сообщение уже есть в таблице.
4. Если запрос не возвращает строку, значит сообщение новое.

  Ответить  
 
 автор: Habl   (05.08.2012 в 22:24)   письмо автору
 
   для: confirm   (05.08.2012 в 21:45)
 

У меня вообще все перестало работать, бошка кипит уже.....

$search = mysql_query("SELECT unic FROM JMT_goryshue_tyri_v_shilanky WHERE unic =".$unic."",$db);
if(mysql_num_row($search))
{
$proba = mysql_result($search);
if ($_POST['goryshue_tyri_v_shilanky'] == $proba)
{
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh' CONTENT='2; URL=http://gen.net/JMT_goryshue_tyri_v_shilanky.php'>
</HEAD></HTML>";
exit ("<p style='margin:auto; margin-top:300px; padding:7px; color:red; font-size:30px; border:solid gray 1px; width:238px;'>Такая запись уже есть</p>");
}}

  Ответить  
 
 автор: confirm   (05.08.2012 в 21:45)   письмо автору
 
   для: Habl   (05.08.2012 в 21:35)
 

А чего вы ищите, если вычисленный хэш содержит переменная $unic, а запрос вы делаете для значения $_POST['goryshue_tyri_v_shilanky']? Наверное надо запрос для:
.... WHERE unic = '".$unic."'",$db);
после чего проверить:
if(mysql_num_rows($search)) //есть такое в базе
else //отсутствует
А if ($_POST['goryshue_tyri_v_shilanky'] == $unic), и без проверки ясно, что они не равны.

  Ответить  
 
 автор: Habl   (05.08.2012 в 21:35)   письмо автору
 
   для: confirm   (05.08.2012 в 19:52)
 

Че то не получается у меня сравнить кэш, добился пока что только что кэш заносится в другое поле.

$unic = md5($goryshue_tyri_v_shilanky);

$search = mysql_query("SELECT unic FROM JMT_goryshue_tyri_v_shilanky WHERE unic = '".$_POST['goryshue_tyri_v_shilanky']."'",$db);
if ($_POST['goryshue_tyri_v_shilanky'] == $unic)
{
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh' CONTENT='2; URL=http://gen.net/JMT_goryshue_tyri_v_shilanky.php'>
</HEAD></HTML>";
exit ("<p style='margin:auto; margin-top:300px; padding:7px; color:green; font-size:30px; border:solid gray 1px; width:319px;'>Такая запись уже есть :(</p>");

Подскажите что я делаю не так?

  Ответить  
 
 автор: confirm   (05.08.2012 в 19:52)   письмо автору
 
   для: Habl   (05.08.2012 в 19:43)
 

Я вот все думаю, вы так уникальны, что вероятность написания сообщения, у которого на 100% все будет тютелька у тютельку, это 100%? :)
Да что писать то, получили сообщение, получайте его хэш:
$message = md5($_POST['message']);
Теперь делайте запрос в таблицу сообщений по полю хранящему хэш (это 32-значное шестнадцатеричное число) равный вычисленному, если вернет одну строку, значит есть в базе, нет, значит сообщение иное.

  Ответить  

Сообщения:  [1-10]    [11-20]  [21-23] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования