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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Обработка формы методом $_GET
 
 автор: ruslanaxti   (22.04.2011 в 01:35)   письмо автору
 
 

Подскажите мне как обработать форму:

<form action="index.php">
<table cellpadding="5" cellspacing="0" border="0"><tr><td>Фамилия</td><td>
<input name="search_family" type="text" id="search_form" value="" /></td><td></td></tr>
<tr><td>Имя</td><td>
<input name="search_name" type="text" id="search_form" value="" /></td><td></td></tr>
<tr><td>Город</td><td>
<input name="search_city" type="text" id="search_form" value="" /></td><td>
<input name="send_searchusers" type="submit" value="Найти" class="send_searchusers" /></td></tr>
</table></form>

Не могу настроить скрипт который принимал бы эту форму и производил поиск по базе по введенным в поля данным
Скрипт который обрабатывает эту форму:

if($_GET['search_family']!==""){

$family=$_GET['search_family'];
$query_searchusers="SELECT userID,name,family,live_city,foto FROM axt_user WHERE family LIKE '$family'";

if(isset($_GET['search_name']) & empty($_GET['search_city'])){
$family=$_GET['search_name'];
$query_searchusers="SELECT userID,name,family,live_city,foto FROM axt_user WHERE family='$family' AND name='$name'";
}

if(isset($_GET['search_city']) & empty($_GET['search_name'])){
$city=$_GET['search_city'];
$query_searchusers="SELECT userID,name,family,live_city,foto FROM axt_user WHERE family='$family' AND live_city='$city'";
}

if(isset($_GET['search_city']) & isset($_GET['search_name'])){
$city=$_GET['search_city'];
$query_searchusers="SELECT userID,name,family,live_city,foto FROM axt_user WHERE family='$family' AND live_city='$city' AND name='$name'";
}


}else{ exit("Фамилия обязательна"); }



$result=mysql_query($query_searchusers);
if(mysql_num_rows($result))
{
while($row=mysql_fetch_assoc($result))
{

echo '<div class="friends">
<div class="fitne_foto">
<img src="images/'.$row.'" width="50" height="50" /></div>
<div class="fitne_text"><span class="format_name">'.$row['name'].' '.$row['family'].'</span><br/><span class="format_city">'.$row['live_city'].'</span>
</div>
<div class="friends_add"><a href="#">Добавить в друзья</a></div>
</div>';

}
} else { echo "Результат пуст"; }


В строке браузера он выводит: index.php?search_family=&search_name=руслан&search_city=&send_searchusers=Найти

и на этом останавливается

Я пробовал в форме action прописать action="index.php?search=users", а затем проверить if($_GET['search']=='users') выполнить нужный мне код, не получается, наверняка неверный это метод для форм. Но ссылки у меня именно так нормально работают

Как здесь определить что отправлена именно эта форма поиска и надо выполнить нужным для этого скрипт? И как извлечь параметры? И должно ли так выводится в строке браузера?

  Ответить  
 
 автор: ruslanaxti   (22.04.2011 в 02:04)   письмо автору
 
   для: ruslanaxti   (22.04.2011 в 01:35)
 

И почему выходит название кнопки send_searchusers=Найти

  Ответить  
 
 автор: cheops   (22.04.2011 в 08:25)   письмо автору
 
   для: ruslanaxti   (22.04.2011 в 01:35)
 

Отладку удобнее всего начать с вывода дампа массива $_GET
<?php
  print_r
($_GET);
?>

>И как извлечь параметры?
Вроде у вас извлекается все верно.

>И должно ли так выводится в строке браузера?
Да, должны.

  Ответить  
 
 автор: ruslanaxti   (22.04.2011 в 20:52)   письмо автору
 
   для: cheops   (22.04.2011 в 08:25)
 

А почему выходит значение кнопки send_searchusers=Найти в адресной строке? Так вроде не должно быть. В поисковиках название кнопки нету при запросе

  Ответить  
 
 автор: cheops   (22.04.2011 в 23:08)   письмо автору
 
   для: ruslanaxti   (22.04.2011 в 20:52)
 

Нет, это как раз нормально. Поисковики не назначают атрибут name кнопкам, если вы уберете его, то и у вас этот параметр исчезнет.

  Ответить  
Rambler's Top100
вверх

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