Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Сверка данных из формы с базой

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Проблема с повтором
Bioslave
Отправлено: 23 Апреля, 2011 - 21:40:06
Post Id


Новичок


Покинул форум
Сообщений всего: 57
Дата рег-ции: Февр. 2010  


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. include ('conf.php');
  3.  
  4. $company=$_POST['company'];
  5. $date=$_POST['date'];
  6. $city=$_POST['city'];
  7. $nrpr=$_POST['nrpr'];
  8. $type=$_POST['type'];
  9. $vodchast=$_POST['vodchast'];
  10. $tprik=$_POST['tprik'];
  11. $npoz=$_POST['npoz'];
  12. $named=$_POST['named'];
  13.  
  14. /*
  15. if(isset($_POST['SubmitButton'])) {
  16. if(isset($_POST['company']) && !empty($_POST['company'])
  17. && isset($_POST['date']) && !empty($_POST['date'])
  18. && isset($_POST['city']) && !empty($_POST['city'])
  19. && isset($_POST['nrpr']) && !empty($_POST['nrpr'])
  20. && isset($_POST['type']) && !empty($_POST['type'])
  21. && isset($_POST['vodchast']) && !empty($_POST['vodchast'])
  22. && isset($_POST['tprik']) && !empty($_POST['tprik'])
  23. && isset($_POST['npoz']) && !empty($_POST['npoz'])
  24. && ($_POST['radiobutton']==="yes")
  25. && isset($_POST['named']) && !empty($_POST['named']))
  26.  */
  27.  $query = "SELECT * FROM add_group WHERE nrpr LIKE '%$nrpr%'";
  28. $result = mysql_query ($query);
  29.  
  30.   while ($row = mysql_fetch_array ($result)) {
  31.  
  32.         if ($row['nrpr'] == $nrpr)    {
  33.   echo "<script>alert('Такой тип документа уже сушествует в базе данных')</script>";
  34.   echo "<script>window.location.href='index.php?input=all'</script>";
  35.     }
  36.    }  else {
  37.   $query = "INSERT INTO add_group (company,date,city,nrpr,type,vodchast,tprik,npoz,named,pot) VALUES('$company','$date','$city','$nrpr','$type','$vodchast','$tprik','$npoz','$named','Подтверждён')";
  38.     $result = mysql_query ($query);
  39.    echo "<script>alert('Запись добавлена в базу данных')</script>";
  40.     echo "<script>window.location.href='index.php?input=all'</script>";
  41.      }
  42.     //}
  43.       // }
  44.  
  45.  
  46.     if(isset($_POST['SubmitButton'])) {
  47. if(isset($_POST['company']) && !empty($_POST['company'])
  48. && isset($_POST['date']) && !empty($_POST['date'])
  49. && isset($_POST['city']) && !empty($_POST['city'])
  50. && isset($_POST['nrpr']) && !empty($_POST['nrpr'])
  51. && isset($_POST['type']) && !empty($_POST['type'])
  52. && isset($_POST['vodchast']) && !empty($_POST['vodchast'])
  53. && isset($_POST['tprik']) && !empty($_POST['tprik'])
  54. && isset($_POST['npoz']) && !empty($_POST['npoz'])
  55. && ($_POST['radiobutton']==="no")
  56. && isset($_POST['named']) && !empty($_POST['named']))
  57.  
  58.   mysql_query("INSERT INTO add_group (company,date,city,nrpr,type,vodchast,tprik,npoz,named) VALUES('$company','$date','$city','$nrpr','$type','$vodchast','$tprik','$npoz','$named')");
  59.      echo "<script>alert('Запись добавлена в базу данных')</script>";
  60.      echo "<script>window.location.href='index.php?input=all'</script>";
  61.     }
  62.           }
  63.  ?>



Проблема в том что если данные из формы совпадает то сообщение о том в базе есть уже такие данные выходит всё ок, но после этого он всёравно добавляет повтор в базу данных, как быть ? в чём моя ошибка ?


-----
Ася:-ПятьШесть4035773
 
 Top
duk
Отправлено: 23 Апреля, 2011 - 22:05:28
Post Id



Частый гость


Покинул форум
Сообщений всего: 208
Дата рег-ции: Февр. 2010  
Откуда: Москва


Помог: 3 раз(а)




Скобки (фигурные) неправильно расставлены.
Вставьте код в любой более-менее продвинутый редактор и всё сразу станет ясно
 
 Top
Bioslave
Отправлено: 23 Апреля, 2011 - 22:24:10
Post Id


Новичок


Покинул форум
Сообщений всего: 57
Дата рег-ции: Февр. 2010  


Помог: 0 раз(а)




Какой посоветуете ?


-----
Ася:-ПятьШесть4035773
 
 Top
duk
Отправлено: 23 Апреля, 2011 - 22:28:41
Post Id



Частый гость


Покинул форум
Сообщений всего: 208
Дата рег-ции: Февр. 2010  
Откуда: Москва


Помог: 3 раз(а)




во многом - дело вкуса и привычки.
А о вкусах не спорят Радость

можно взять Notepad++
 
 Top
Bioslave
Отправлено: 23 Апреля, 2011 - 22:37:55
Post Id


Новичок


Покинул форум
Сообщений всего: 57
Дата рег-ции: Февр. 2010  


Помог: 0 раз(а)




Ну тогда можно было бы сразу ошибку показать ))))) Радость
(Добавление)
Не могу разобраться где не правильная фигурная скобка ?


-----
Ася:-ПятьШесть4035773
 
 Top
OrmaJever Модератор
Отправлено: 24 Апреля, 2011 - 00:58:33
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Bioslave пишет:
Не могу разобраться где не правильная фигурная скобка ?

это вам виднее выже писали скрипт... Откуда мы знаем логику этого скрипта?


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Bioslave
Отправлено: 24 Апреля, 2011 - 08:59:36
Post Id


Новичок


Покинул форум
Сообщений всего: 57
Дата рег-ции: Февр. 2010  


Помог: 0 раз(а)




Вот подправил опять не помогает, help.

PHP:
скопировать код в буфер обмена
  1. $query = "SELECT * FROM add_group WHERE nrpr LIKE '%$nrpr%'";
  2. $result = mysql_query ($query);
  3.  
  4.   while ($row = mysql_fetch_array ($result)) {
  5.          $pr = $row ['nrpr'];
  6.       }
  7.  
  8.      if ($nrpr === $pr) {
  9.     echo "<script>alert('Такой тип документа уже сушествует в базе данных')</script>";
  10.     echo "<script>window.location.href='index.php?input=all'</script>";
  11.     }
  12.  
  13.        if ($nrpr !== $pr) {
  14.      $query = "INSERT INTO add_group (company,date,city,nrpr,type,vodchast,tprik,npoz,named,pot) VALUES('$company','$date','$city','$nrpr','$type','$vodchast','$tprik','$npoz','$named','Подтверждён')";
  15.       $result = mysql_query ($query);
  16.       echo "<script>alert('Запись добавлена в базу данных')</script>";
  17.      echo "<script>window.location.href='index.php?input=all'</script>";
  18.      }
  19.     //}
  20.        }


-----
Ася:-ПятьШесть4035773
 
 Top
duk
Отправлено: 24 Апреля, 2011 - 09:17:17
Post Id



Частый гость


Покинул форум
Сообщений всего: 208
Дата рег-ции: Февр. 2010  
Откуда: Москва


Помог: 3 раз(а)




ЗАчем LIKE то ?
Искать на точное соответствие.
Не найдено - вставляем.
Найдено (больше нуля записей вернулось) - выдаем сообщение.

И здесь опять лишняя скобка.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB