Гость
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Как загрузить результат php скрипта без перезагрузки страницы? / 2 сообщений из 2, страница 1 из 1
29.05.2018, 15:34
    #39651857
Medvedoc
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загрузить результат php скрипта без перезагрузки страницы?
Добрый день! Есть скрипт на php:
Спойлер: Код скрипта на php
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
<?php
header('Content-Type: text/html; charset=utf-8');
ini_set('error_reporting', E_ALL);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
$arr_cms=array(
'Вопросы рубрики наука и техника' => 'Вопросы рубрики наука и техника',
'Вопросы рубрики компьютеры и интернет' => 'Вопросы рубрики компьютеры и интернет'
);
// таймаут (сколько ждать ответа сайта)
$tm_out=10; // сек.
 
function pars_url($str){
    $str=str_ireplace('https://','',$str);
    $str=str_ireplace('http://','',$str);
    $arr=array();
    $arr=explode("\n",$str);
    $arr=array_unique($arr);
    return $arr;
    }
function simple_curl($url){
    global $tm_out;
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_RETURNTRANSFER,1);
    curl_setopt($curl, CURLOPT_AUTOREFERER,true);
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION,true);
    curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, $tm_out);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($curl, CURLOPT_URL, $url);
    $x = curl_exec($curl);
    return $x;
}  
function rrr($str) {
    global $arr_cms;
    $arr=array(0=>'Неизвестно',1=>'');
    foreach ($arr_cms as $a=>$b){
    $pos = stripos($str, $b);
    if ($pos===false)
    {}else {
        $arr[1]=$b;
        $arr[0]=$a;
        return $arr;
        }
        }
    return $arr;
    }
$f=array();
if (isset($_POST['url']) && ($_POST['url'] != '' )){
    $arr=pars_url($_POST['url']);
    echo '<center>';
    foreach ($arr as $a=>$b){
    $content = simple_curl('http://'.trim($b));
    $f=rrr($content);
    echo  'Цмс: <b>' . $f[0].'</b>';
    echo ' ('.$f[1].') ';
    echo  ' Сайт: <b>'. $b.'</b><br>'."\n";
    }
echo '</center>';  
} else {
echo $frm='
<html>
   <body>
       <h1>Введите урл</h1>
       <form action="index.php" method="post">
           <textarea rows="10" cols="45" name="url"></textarea><br>
           <input type="submit" value="Go">
       </form>
     
</body>
</html>';
}


Суть в том, что вводим в текстовое поле ссылки одного ресурса, а в результате скрипт обрабатывает и выдает есть ли по этим ссылкам категории или нет.
Вот для пример ссылки.
http://www.bolshoyvopros.ru/questions/actual/cat10.html
http://www.bolshoyvopros.ru/questions/actual/cat12.html

Как сделать так, чтобы загрузка происходила через ajax? То есть сначала должна браться первая ссылка и она обрабатываться. Процесс загрузки в виде лоадера. Потом таким же образом вторая ссылка.
На данный момент происходит перезагрузка страницы и выдает готовый результат сразу по обоим ссылкам.
...
Рейтинг: 0 / 0
29.05.2018, 20:09
    #39652038
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загрузить результат php скрипта без перезагрузки страницы?
Первым делом следует разделить клиентскую и серверную части.
Реализовать яваскриптом на клиенте:
- чтение входных данных из текстового поля,
- их разбор на отдельные части и проверку корректности,
- отправку запросов на сервер,
- обработку ответов сервера (запись результатов на страницу) включая обработку ошибок,
- показ/сокрытие картинки лоадера,
- по необходимости прогрессбар.
Ну и серверный скрип чуток подпилить - заменить ответ в виде HTML-кода на JSON.
Как-то так примерно.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Как загрузить результат php скрипта без перезагрузки страницы? / 2 сообщений из 2, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]