За последние 24 часа нас посетил 22331 программист и 1033 робота. Сейчас ищут 745 программистов ...

Как загрузить результат php скрипта без перезагрузки страницы?

Тема в разделе "JavaScript и AJAX", создана пользователем Medvedoc, 29 май 2018.

Метки:
  1. Medvedoc

    Medvedoc Активный пользователь

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

    Как сделать так, чтобы загрузка происходила через ajax? То есть сначала должна браться первая ссылка и она обрабатываться. Процесс загрузки в виде лоадера. Потом таким же образом вторая ссылка.
    На данный момент происходит перезагрузка страницы и выдает готовый результат сразу по обоим ссылкам.