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

php wget

Тема в разделе "Прочие вопросы по PHP", создана пользователем Anton_Astrogor, 28 апр 2009.

  1. Anton_Astrogor

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

    С нами с:
    2 апр 2008
    Сообщения:
    4
    Симпатии:
    0
    Есть проблема, скрипт записывает в файл get ссылку
    и функция system() должна начать выполнение этого скрипта. Что бы было проще привожу сам скрипт
    Код (Text):
    1.  
    2.  
    3. <?
    4. $filename = 'get';
    5. isset($_GET['step']) ? $step = $_GET['step'] : $step='';
    6.  
    7. if($step=='')
    8.     {
    9.     echo '<FORM ACTION="./get.php?step=1" METHOD=post>
    10.     <INPUT TYPE="text" name="url" SIZE="20" VALUE="">
    11.     <INPUT TYPE="submit" VALUE="Отправить">
    12.     </FORM>';
    13.     }
    14. if($step=='1')
    15.     {
    16.     $ch = curl_init(''.$_POST['url'].'');
    17.     curl_setopt($ch, CURLOPT_HEADER, 0);
    18.     $ua = 'User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Widows NT)'; // ну, или что больше нравится
    19.     curl_setopt($ch, CURLOPT_USERAGENT, $ua); // чтобы сказать что мы броузер, а не так себе...
    20.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);// allow redirects  
    21.     curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable  
    22.     $buf = curl_exec($ch);
    23.     $a = preg_split('/\&movie\=/', $buf);
    24.     $b = preg_split('/\&/', $a[1]); // $b[0]
    25.     if ($b[0] == '')
    26.     {
    27.     $a = preg_split('/\?file\=/', $buf);
    28.     $b = preg_split('/\"/', $a[1]);
    29.     }
    30.     $c = preg_split('/\//', $_POST['url']);
    31.     $d = preg_split('/\./', $c[4]); // $d[0]
    32.     $link = "wget -b ".$b[0]." -O /home/flash/html/bazes2/".$d[0].".flv\n";
    33.     if (is_writable($filename)) {
    34.     if (!$handle = fopen($filename, 'w')) {
    35.     echo "Не могу открыть файл ($filename)";
    36.     exit;
    37.      }
    38.   if (fwrite($handle, $link) === FALSE) {
    39.   echo "Не могу произвести запись в файл ($filename)";
    40.  exit;
    41.   }
    42.     fclose($handle);
    43.     } else {
    44.     echo "Файл $filename недоступен для записи";
    45.     }
    46.  
    47.     system('/home/flash/html/bazes2/get');
    48.  
    49. echo '<META HTTP-EQUIV="refresh" content="5;URL=./get.php">';
    50.     }
    51. ?>
    проблема в том что если выполнять из консоли вайл get то все работает, но через php он не работает, что можно сделать в данной ситуации???
     
  2. Anton_Astrogor

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

    С нами с:
    2 апр 2008
    Сообщения:
    4
    Симпатии:
    0
    С проблемой разобрался... скрипт полностью рабочий была проблема с доступам к файлам, тему можно перенести в готовые решения и закрыть, этот скрипт тырит ссылки на flv с сайта http://vidivi.ru/