2010-07-16 2 views
1

Что я изучаю: -Как показать сообщение о ходе выполнения при обновлении в PHP?

У меня есть страница поиска, на которой указана страница индекса. и файл действия - search.php. при запуске запроса search.php начнет обработку на том, что я искал.

структура search.php

  1. использует $ _GET функции для получения запроса из индекса страницы.
  2. сначала он будет искать в базе данных MySQL.
  3. IF да затем отображает результат из базы данных MySQL.
  4. IF, то нуль сделать процесс, чтобы получить результат для запроса и вставить в базу данных MySQL

, что мне нужно будет, если результат запроса не в базе данных, то он должен показать сообщение о ходе говорящее " Пожалуйста, подождите. Мы впервые встретили этот запрос, поэтому мы обновляем нашу базу данных »или что-то подходящее.

Как это сделать в PHP?

ответ

2

Это был бы еще один хороший кандидат на использование запроса ajax. вы загрузите базовую страницу, а затем запустите запрос ajax после ее загрузки. затем отобразить сообщение, есть ли состояние ожидания в игре, а затем заменить сообщение с результатами поиска ...

джим

+0

Привет, Джим, мне очень сложно интегрировать Ajax с PHP. мне очень сложно, как я уже говорил ранее, я не знаком с Ajax и некоторыми областями JavaScript. как я могу запустить запрос Ajax через PHP? любой образец ... на самом деле я могу получить множество сценариев из Интернета, но основная часть - интеграция между двумя. – mathew

+0

mathew - этот маленький пример, кажется, охватывает все в базовом и информативном виде: http://php4every1.com/tutorials/jquery-ajax-tutorial/ или http://www.queness.com/post/328/ a-simple-ajax-driven-website-with-jqueryphp –

+0

Вы не запускаете запрос Ajax с PHP - это вызов в вашем JavaScript, который запросит PHP-файл на сервере. Ответ Джима будет работать нормально, если вы будете осторожны. –

0

Использовать AJAX для связи асинхронно.

1

Как уже упоминалось, использовать AJAX для опроса сервера и проверьте, поиск готово. Однако вам все равно нужно «закончить» первый запрос и вызвать код обработки поиска, чтобы браузер пользователя не просто сидел там, ожидая данных.

На сервере вы можете породить процесс, который отсоединяется от процесса запроса, как это:

exec('nohup /path/to/script.php > /dev/null &'); 

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

Смежные вопросы