Вот что я получил прямо сейчас …
У меня есть веб-страница, которая при доступе подключается к surveygizmo.com через их открытый API, возвращает множество данных, а затем возвращает эти данные мне для обработки на моем конце. Этот процесс занимает примерно 10-12 секунд, и пока он выполняется, страница просто находится в состоянии «загрузки», и мне показана пустая белая страница.
Вот что я хочу …
Когда эта же веб-страница будет доступна, я бы хотел, чтобы она начала выполнение скрипта и начала извлекать данные из surveygizmo.com через их API так же, как я делаю это сейчас, но пока этот процесс запущен, я хотелось бы, чтобы страница «сообщение загружалась», которая отображается вместо пустой белой страницы, а затем, как только выполнение сценария заканчивается, и все результаты были возвращены и обработаны, страница «сообщение загружается» / сообщение исчезает ,
Я довольно хорошо знаком с php и javascript, но пока не смог понять это. Любое руководство или консультация по этому вопросу были бы весьма признательны.
Благодаря!
Вы хотите взглянуть на AJAX. Решение состоит в том, чтобы отправить браузеру страницу загрузки, содержащую javascript, который показывает загружаемое сообщение, а затем асинхронно подключается к серверу на основе фактических данных. Когда вы получили и обработали данные, вы можете вставить их в DOM и удалить загружаемое сообщение. Googling для XMLHttpRequest предоставит вам подробную информацию.
<?php echo "Working...<br/>\r\n"; flush(); //output to the browser before the rest of the execution connect_surveygizmo(); //this is going to take while. echo "Finished!"; ?>
Создайте страницу загрузки, в которой отображается желаемое загружаемое сообщение. Затем, используя ajax (я настоятельно рекомендую jQuery), загружаю отдельный php-файл, который загружает внешние данные. Как только данные возвращаются на вашу страницу загрузки, простая задача – скрыть сообщение загрузки и заменить его выходом ajax.