InfoCity
InfoCity - виртуальный город компьютерной документации
Реклама на сайте







Размещение сквозной ссылки

 

Обработка запроса пользователя


Удобства ради любой PHP-скрипт лучше всего начинать с описания параметров базы данных. Таким образом, если в какой-то момент вы решите изменить имя базы или пароль пользователя, вам не придется искать нужную строку в сотнях строк кода. Поэтому первые строки нашего PHP-поисковика выглядят довольно прозаично:

 $host="localhost";
$un="username";
$pw="password";
$db_name="databasename";
$error_query_not_entered="Вы ничего не ввели в окно поиска. Пожалуйста, повторите поиск";

$host - это имя сервера, на котором лежит база данных, в большинстве случаев используется внутреннее имя localhost. $un - сокращение от английского слова username, имя пользователя базы данных, $pw - соответственно пароль. $db_name - это имя базы данных, к которой мы будем подключаться, а переменная $error_query_not_entered есть не что иное, как сообщение об ошибке, которое мы будем показывать пользователю, если он нажал кнопку "Искать" забыв ввести ключевые слова в окно для поиска.

Собственно, давайте займемся этим прямо сейчас. Нет смысла подключаться к базе данных и использовать драгоценные системные ресурсы, если пользователь ничего не ввел в окно поиска. Допуская, что переменную с формы поиска вы считали как $q, поместим следующие три строчки кода:

 if ($q=="")
{
echo $error_query_not_entered;
}

Это проверит переменную $q на наличие содержимого, и если в ней ничего не обнаружится, то пользователю будет выведено сообщение об ошибке. Более того, кроме этого сообщения об ошибке пользователь не должен ничего увидеть, поэтому процесс можно на этом закончить, а все остальные команды поместить в блок else, связанный с этим же блоком if.

Давайте обработаем запрос пользователя. Для того, чтобы обработать каждое слово, введенное им в окно поиска, нужно фразу $q разбить на отдельные слова (разве что искать вы хотите только фразу целиком).

 $q_array=explode(" ", $q);

Таким образом, в массиве $q_array у нас появились все слова, введенные пользователем. Неплохо бы узнать, сколько же отдельных слов присутствует в запросе:

 $q_num=(integer)count($q_array);

После этого $q можно сразу же использовать, так как дальше она нам не пригодится. Как и подобает поисковику, мы напомним пользователю о параметрах поиска.

 echo "Вы искали <b>".$q."</b>";

В итоге пока что наш код выглядит следующим образом:

 $host="localhost";
$un="username";
$pw="password";
$db_name="databasename";
$error_query_not_entered="Вы ничего не ввели в окно поиска. Пожалуйста, повторите поиск";
if ($q=="")
{
echo $error_query_not_entered;
}
else
{
$q_array=explode(" ", $q);
$q_num=(integer)count($q_array);
echo "Вы искали <b>".$q."</b>";
}

[Назад][Содержание][Вперед]


Реклама на InfoCity

Яндекс цитирования



Финансы: форекс для тебя








1999-2009 © InfoCity.kiev.ua