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

Форум MySQL

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

 

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

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

тема: Что-то поиск не пашет ((

Сообщения:  [1-10]   [11-13] 

 
 автор: Alessandro   (03.03.2006 в 17:20)   письмо автору
 
   для: Trianon   (03.03.2006 в 16:35)
 

>Когда я не уверен, что поступает на вход моего скрипта, я
>просто добавляю в самое начало вызов phpinfo(); Громоздко
>несколько, зато видны все параметры, как значения, так и
>имена через которые они доступны.
>
>>Так как если вместо этого прописать
>>$searchtype=$_POST['searchtype'];
>>$searchterm=$_POST['searchterm'];
>>$searchterm=trim($searchtype);
>
>меж тем последнюю строку Вы так и не исправили.
>$searchterm=trim($_POST['searchterm']);
>$searchtype=trim($_POST['searchtype']);

Я взял и удалил эти самые 3 строчки


>>$searchtype=$_POST['searchtype']; 
>>$searchterm=$_POST['searchterm']; 
>>$searchterm=trim($searchtype); 


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

   
 
 автор: Trianon   (03.03.2006 в 16:35)   письмо автору
 
   для: Alessandro   (03.03.2006 в 15:57)
 

Когда я не уверен, что поступает на вход моего скрипта, я просто добавляю в самое начало вызов phpinfo(); Громоздко несколько, зато видны все параметры, как значения, так и имена через которые они доступны.

>Так как если вместо этого прописать
>$searchtype=$_POST['searchtype'];
>$searchterm=$_POST['searchterm'];
>$searchterm=trim($searchtype);

меж тем последнюю строку Вы так и не исправили.
$searchterm=trim($_POST['searchterm']);
$searchtype=trim($_POST['searchtype']);

   
 
 автор: elenaki   (03.03.2006 в 16:20)   письмо автору
 
   для: Alessandro   (03.03.2006 в 15:57)
 

а если вывести на экран эти переменные перед вставкой в запрос? а если прописать
метод get и посмотреть, что передается в ссылке?

   
 
 автор: Alessandro   (03.03.2006 в 15:57)   письмо автору
 
   для: Trianon   (02.03.2006 в 22:14)
 

Ошибка не в запросе а в том что данные которые я выбираю это фамлию и объект и ключевое слово поиска которое я ввожу они не доходят до запроса - вот эти


if(empty($submit))
{
?> 
<form method="post" action="<?php echo $PHP_SELF?>?razd=search&sub_razd=s_rab">


Выберите тип поиска : </br>
<select name ="searchtype">
<option value ="familiya">По фамилии</option> 
<option value ="name">По объекту</option>
</select>
<br />
Введите информацию для поиска : <br />
<input name="searchterm" type="text">
<br />
<center>
<input type="Submit" name="submit" value="Найти"></center>
</form>
<?php
}
}


Так как если вместо этого прописать


$searchtype=$_POST['searchtype'];
$searchterm=$_POST['searchterm'];
$searchterm=trim($searchtype);


Вот это :


$searchtype="name";
$searchterm='Алтуфьево';
$searchterm=trim($searchterm);


Т.е. принудительно написать столбец - name и ключевое слово - Алтуфьево, то поиск работает верно. Из-за чего может работать присвоение значений $searchtype, $searchterm ?

   
 
 автор: elenaki   (03.03.2006 в 09:33)   письмо автору
 
   для: Alessandro   (02.03.2006 в 22:16)
 

я вот так строю динамический запрос. у меня в форме есть выбор из селектов, текстовых
полей, календаря и радио-кнопок. сначала проверяю, задан ли определенный параметр, потом
были ли уже условия ДО (по разному добавляется строка - с where или без него) и строю
запрос. потом обязательно вывожу его и смотрю, что получилось, даю этот запрос программе
(MySQL-Front), проверяю, что выдал скрипт и что программа. листинг в аттаче.

   
 
 автор: Alessandro   (02.03.2006 в 22:16)   письмо автору
 
   для: elenaki   (02.03.2006 в 22:07)
 

Может у кого есть код похожих поисков только желательно чтобы именно также можно было выбрать столбец по которому надо искать ну и набрать ключевое слово ?

   
 
 автор: Trianon   (02.03.2006 в 22:14)   письмо автору
 
   для: Alessandro   (02.03.2006 в 21:54)
 

Зависит от структуры таблицы rab . Например, от того, есть ли там поля name и familiya и какого они типа?
Ошибку, которую заметила elenaki ($searchterm заполняется явно не оттуда) тоже стоит исправить. Если еще не исправили.
А еще я бы перед mysql_query($query) or die...
напечатал бы echo $query; и поглядел бы на текст запроса, чтоб зря не гадать.

Да и сам запрос жестковат... я бы написал не where name = 'pupkin' , а where name like '%pupkin%' .... Но это уже когда заработает хоть что-то...

   
 
 автор: elenaki   (02.03.2006 в 22:07)   письмо автору
 
   для: Alessandro   (02.03.2006 в 21:54)
 

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

   
 
 автор: Alessandro   (02.03.2006 в 22:04)   письмо автору
 
   для: elenaki   (02.03.2006 в 21:14)
 

>$searchtype=$_POST['searchtype'];
>$searchterm=$_POST['searchterm'];
>$searchterm=trim($searchtype);
>
>
>последняя строчка мне не нравится. может, надо
>$searchterm=trim($searchterm);?

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

   
 
 автор: Alessandro   (02.03.2006 в 21:54)   письмо автору
 
   для: Trianon   (02.03.2006 в 21:28)
 

Пробывал все 3 варианта не работает, вернее работает только не так - ему вообще все равон какие я параметры поиска задаю он мне всегда выводит одно и тоже. Может как-то не так я задаю эти переменные - $searchtype $searchterm, и поэтому он не понимает их ?

   

Сообщения:  [1-10]   [11-13] 

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

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