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

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

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

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

    Joined:
    8 Dec 2008
    Messages:
    396
    Likes Received:
    79
    Reputations:
    16
    Получается для каждого скрипта свой процесс? Если удалить сам скрипт, процесс будет продолжатся? Проверить на данный момент не могу.
     
  2. DeepBlue7

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

    Joined:
    2 Jan 2009
    Messages:
    359
    Likes Received:
    50
    Reputations:
    12
    Будет продолжатся... он в памяти продолжит пахать... Так как ignore_user_abort - true, он так и останется там висеть... хотя, если хостер не левый - некоторый таймаут у него будет. Иначе - чот на подобии DoS-а получится, если юзеры крутящие скрипты на подобии твоего навалят.

    А ведь это идея...

    Code:
    <?php
    set_time_limit(0);
    ignore_user_abort(true); 
    while(true);
    ?>
    
    Если все нужные функции разрешены - несколько рефрешов и бай-бай :).
     
    #20602 DeepBlue7, 17 May 2012
    Last edited: 17 May 2012
  3. DeepBlue7

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

    Joined:
    2 Jan 2009
    Messages:
    359
    Likes Received:
    50
    Reputations:
    12
    Вам сюда: http://forum.antichat.ru/threadnav92492-177-10.html
     
  4. Kruzak

    Kruzak New Member

    Joined:
    21 Dec 2010
    Messages:
    126
    Likes Received:
    4
    Reputations:
    1
    на сервере 2 IP, на первом сайты
    второй - просто добавлен как дополнительный в панели isp

    вопрос - как заставить php делать курл запросы со второго IP?
     
  5. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Kruzak http://php.net/curl_setopt CURLOPT_INTERFACE
     
    _________________________
    1 person likes this.
  6. DeepBlue7

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

    Joined:
    2 Jan 2009
    Messages:
    359
    Likes Received:
    50
    Reputations:
    12
    Есть небольшой вопрос - в php есть встроенные функции типа echo и print, которые можно вызывать так:

    Code:
    <?php 
    echo "hello";
    echo("hello"); //привычный вызов
    ?>
    

    Возможно ли самому мутить функции, которые принимали аргумент так, как это может echo ? Т.е. без скобок.
     
  7. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    396
    Likes Received:
    79
    Reputations:
    16
    Есть php скрипт с продолжительной работой. Управлять его работой можно только при помощи сессий/файлов или есть какие-то более стандартные/принятые способы?
     
  8. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    AnGeI файлы - это простой и действенный способ для простого взаимодействия (например старт стоп). Если хочется погорячее - можете гонять данные через сокеты/сигналы/общую память/семафоры. Все стандартные способы пхп поддерживает (в теории). Реализация же чего-то через них в пхп будет весьма увлекательной. Если сделаете через семафоры/общую память - расскажете потом
     
    _________________________
  9. Shoooric

    Shoooric New Member

    Joined:
    16 May 2012
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Вопрос по Mass E-Mailer

    Здравствуйте, уважаемый форум!
    Прошу Вашего совета по поводу PHP-скрипта для массовой рассылки e-mail. Есть хостинг с поддержкой PHP, на котором работает только платный GP Mailer, а остальные (проверил штук 25) не хотят. Менял права доступа по всякому и без результата - интерфейс почты есть, а отправка не идет ни на какую почту. Больше всего интересует скрипт Mass E-Mailer или аналог. Может что поправить в них надо, чтобы заработали?
     
  10. |qbz|

    |qbz| Banned

    Joined:
    25 Dec 2009
    Messages:
    388
    Likes Received:
    169
    Reputations:
    65
    DeepBlue7, echo & print по-моему не функции, а операторы.
     
  11. |qbz|

    |qbz| Banned

    Joined:
    25 Dec 2009
    Messages:
    388
    Likes Received:
    169
    Reputations:
    65
    Это POST "кусками" - multipart/form-data. Можно подделать на курле. Вот пример, выдран кусок из моего скрипта одного:

    PHP:
    function sendRegistration($email$pass$name$secondname$about$cid$cword)
        {
            global 
    $chosen_useragent$cookie_session;
            
            
    $rn "\r\n";
            
    $boundary rand(11765659570001176565957999);
            
    $poster =     '-----------------------------'.$boundary.$rn.
                        
    'Content-Disposition: form-data; name="REGISTER[LOGIN]"'.$rn.
                        
    $rn.
                        
    $email.$rn.
                        
    '-----------------------------'.$boundary.$rn.
                        
    'Content-Disposition: form-data; name="REGISTER[EMAIL]"'.$rn.
                        
    $rn.
                        
    $email.$rn.
                        
    '-----------------------------'.$boundary.$rn.
                        
    'Content-Disposition: form-data; name="REGISTER[PASSWORD]"'.$rn.
                        
    $rn.
                        
    $pass.$rn.
                        
    '-----------------------------'.$boundary.$rn.
                        
    'Content-Disposition: form-data; name="REGISTER[CONFIRM_PASSWORD]"'.$rn.
                        
    $rn.
                        
    $pass.$rn.
                        
    '-----------------------------'.$boundary.$rn.
                        
    'Content-Disposition: form-data; name="REGISTER[NAME]"'.$rn.
                        
    $rn.
                        
    $name.$rn.
                        
    '-----------------------------'.$boundary.$rn.
                        
    'Content-Disposition: form-data; name="REGISTER[LAST_NAME]"'.$rn.
                        
    $rn.
                        
    $secondname.$rn.
                        
    '-----------------------------'.$boundary.$rn.
                        
    'Content-Disposition: form-data; name="REGISTER[PERSONAL_NOTES]"'.$rn.
                        
    $rn.
                        
    $about.$rn.
                        
    '-----------------------------'.$boundary.$rn.
                        
    'Content-Disposition: form-data; name="UF_POLICYACCEPT"'.$rn.
                        
    $rn.
                        
    '1'.$rn.
                        
    '-----------------------------'.$boundary.$rn.
                        
    'Content-Disposition: form-data; name="captcha_word"'.$rn.
                        
    $rn.
                        
    $cword.$rn.
                        
    '-----------------------------'.$boundary.$rn.
                        
    'Content-Disposition: form-data; name="captcha_sid"'.$rn.
                        
    $rn.
                        
    $cid.$rn.
                        
    '-----------------------------'.$boundary.$rn.
                        
    'Content-Disposition: form-data; name="register_submit_button"'.$rn.
                        
    $rn.
                        
    'Register'.$rn.
                        
    '-----------------------------'.$boundary.'--'.$rn;
            
            
    $head = array(
                
    'Host: 123.com',
                
    'User-Agent: ' $chosen_useragent,
                
    'Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5',
                
    'Accept-Language: en-us,en;q=0.5',
                
    'Accept-Encoding: gzip,deflate',
                
    'Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7',
                
    'Keep-Alive: 300',
                
    'Connection: keep-alive',
                
    'Referer: http://123.com/user/reg/',
                
    'Cookie: ' implode('; '$cookie_session),
                
    'Content-Type: multipart/form-data; boundary=---------------------------' $boundary,
                
    'Content-Length: ' strlen($poster)
            );
                    
            
    $c curl_init();
            
    curl_setopt($cCURLOPT_URL'http://123.com/user/reg/');
            
    curl_setopt($cCURLOPT_RETURNTRANSFER1);
            
    curl_setopt($cCURLOPT_POST1);
            
    curl_setopt($cCURLOPT_POSTFIELDS$poster);
            
    curl_setopt($cCURLOPT_HTTPHEADER$head);
            
    curl_setopt($cCURLOPT_HEADER1);
            
    //curl_setopt($c, CURLOPT_NOBODY, 1);
            
    curl_setopt($cCURLOPT_FOLLOWLOCATION0);
            
            list(
    $firsth$secondh$rest) = explode("\r\n\r\n"$result curl_exec($c));
            
    curl_close($c);
            
            return 
    $secondh;
        }
     
  12. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    |qbz| чтобы передавать multipart/form-data курлом - достаточно в CURL_POSTFIELDS подставить массив, а не строку
     
    _________________________
  13. |qbz|

    |qbz| Banned

    Joined:
    25 Dec 2009
    Messages:
    388
    Likes Received:
    169
    Reputations:
    65
    Тебе это, скорее всего, не нужно, там поидее куки в массиве были и этой командой они добавлялись в шапку. Если куки не нужны / не обязательны - просто удали это место. Если нужны - подставь свои.
    Ога. Писал именно в таком виде ибо логи со сниффера.
     
  14. |qbz|

    |qbz| Banned

    Joined:
    25 Dec 2009
    Messages:
    388
    Likes Received:
    169
    Reputations:
    65
    Ну мой скрипт был как-бы бот, то есть он работал с сайтом интерактивно - при авторизации сервер ставит куки (заголовок Set-Cookie: ), из него вынимаем инфорамцию и ставим при последующих обращениях в заголовок Cookie: (только без данных о сроке валидности кук и так далее - это указывает только сервер браузеру, но никак не браузер серверу).
     
  15. seofilms

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

    Joined:
    27 May 2009
    Messages:
    74
    Likes Received:
    46
    Reputations:
    14
    $i=md5(base64_encode(md5(your pass)));
    Разве такой пароль не неуязвимый ?
    Почему бы просто не поставить такое на свою CMS ?
    Даже если получат хеш админа - брутить будут всю жизнь.
    Или это сильно нагружает сервак и при высокой посещаемости это будет как DDOS ?
     
  16. Chaak

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

    Joined:
    1 Jun 2008
    Messages:
    1,059
    Likes Received:
    1,067
    Reputations:
    80
    MD5 подвержен коллизиям
     
    2 people like this.
  17. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    396
    Likes Received:
    79
    Reputations:
    16
    Есть скрипт с продолжительной работой, запустил еще вчера, - сегодня в вывода ps -u user получаю
    Почему время выполнения 00:00:00? PID тот, что и был вчера, значит процесс тот же. Раньше там было реальное время выполнения. Попробовал создать отдельно скрипт с бесконечным циклом - все равно 00:00:00 всегда пишет.
     
    #20617 AnGeI, 20 May 2012
    Last edited: 20 May 2012
  18. SkyLine32

    SkyLine32 Member

    Joined:
    1 Mar 2009
    Messages:
    144
    Likes Received:
    22
    Reputations:
    2
    PHP:
    <?php
    $ftp_server 
    "ftp.site.ru";
    $ftp_user "username";
    $ftp_pass "userpass";

    $file 'http://sete2.ru/file.txt';
    $remote_file 'file.txt';

    $conn_id ftp_connect($ftp_server) or die("Не удалось установить соединение с $ftp_server"); 

    if (@
    ftp_login($conn_id$ftp_user$ftp_pass)) {
        echo 
    "Произведен вход на $ftp_server под именем $ftp_user\n";

    @
    ftp_put($conn_id$remote_file$fileFTP_ASCII);
        
        
    } else {
        echo 
    "Не удалось войти под именем $ftp_user\n";
    }

    // close the connection
    ftp_close($conn_id);  
    ?>
    Скрипт лежит на одном сайте. Файл должен загружаться на друго, но этого не происходит. Почему?
     
  19. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    396
    Likes Received:
    79
    Reputations:
    16
    SkyLine32, проверьте права ftp-пользователя удаленного сервера на запись и права на чтение файла текущего сервера.
     
  20. SkyLine32

    SkyLine32 Member

    Joined:
    1 Mar 2009
    Messages:
    144
    Likes Received:
    22
    Reputations:
    2
    да все гуд, но проблема осталась. у кого может есть рабочий скрипт для скачивания файла с одного сервера на фтп другого?
     
Loading...
Thread Status:
Not open for further replies.