Вопрос о синтаксисе POST

Тема в разделе "Как сделать...", создана пользователем maneak, 20 дек 2008.

Статус темы:
Закрыта.
  1. maneak

    maneak Читатель

    Заблокирован
    Регистр.:
    29 авг 2007
    Сообщения:
    279
    Симпатии:
    43
    Помогите пожалуйста понять в чем разница между:
    PHP:
    $POST '__VIEWSTATE='.$sekret
    $POST .= '&Username='.$login;
    $POST .= '&Password1='.$pass;
    $POST .= '&Password2='.$pass;
    $POST .= '&Email='.$milo
    $POST .= '&Letters='.$code;
    $POST .= '&month='.$mes
    $POST .= '&day='.$den;
    $POST .= '&year='.$god;
    $POST .= '&chkReadTerms=on';
    $POST .= '&rcreateAccountButton=Create Account!'

    $ch curl_init();
        
    curl_setopt($ch,CURLOPT_TIMEOUT,30);
        
    curl_setopt($ch,CURLOPT_VERBOSE,1);
        
    curl_setopt($chCURLOPT_COOKIEJAR,realpath(".").'/tmp/cookies.txt');
        
    curl_setopt($chCURLOPT_COOKIEFILE,realpath(".").'/tmp/cookies.txt');
        
    curl_setopt ($chCURLOPT_USERAGENT"Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1)");
        
    curl_setopt($chCURLOPT_REFERER"РЕФЕР");
        
    curl_setopt($chCURLOPT_RETURNTRANSFER,1);
            
    curl_setopt($chCURLOPT_URL,"УРЛ_КУДА_ПОСТИМ");
        
    curl_setopt($ch,CURLOPT_POST1);
        
    curl_setopt($chCURLOPT_POSTFIELDS$POST);
    $result=curl_exec($ch);

    и
    PHP:
    echo '<form name="frmRegister" method="POST" action="post.php">';
    echo 
    '<img src="'.$url_img.'"></img>';
    echo 
    '<input type="hidden" name="__VIEWSTATE" value='.$sekret.'>';
    echo 
    '<input type="hidden" name="Username" value='.$login.'>';
    echo 
    '<input type="hidden" name="Password1" value='.$pass.'>';
    echo 
    '<input type="hidden" name="Password2" value='.$pass.'>';
    echo 
    '<input type="hidden" name="Email" value='.$milo.'>';
    echo 
    '<input type="text" name="Letters">';
    echo 
    '<input type="hidden" name="month" value='.$mes.'>';
    echo 
    '<input type="hidden" name="day" value='.$den.'>';
    echo 
    '<input type="hidden" name="year" value='.$god.'>';
    echo 
    '<input type="hidden" name="chkReadTerms" value="on">';
    echo 
    '<input type="hidden" name="createAccountButton" value="Create Account!">';
    echo 
    '<input type="submit" value="отправить">';
    echo 
    '</form>';
    В первом случае составляется Post и шпуляется средствами курла, во втором посылается из формы.
    В первом случае конечный скрипт возвращает ошибку, во втором за милую душу принимает.

    Для проверки обоими способами посылаю на
    PHP:
    foreach($_POST as $k=>$v
    {
    echo 
    $k.'='.$v;
    }
    На выходе невижу никакой разницы, но ведь она есть..
    Подскажите, в какую сторону смотреть?
     
  2. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    Щас все достанут бубны и попробуют узнать какую же ошибку возвращает скрипт.

    Сразу сложно написать?

    ЗЫ
    Код:
    $POST .= '&[U]r[/U]createAccountButton=Create Account!'; 
    мне кажется должно быть
    Код:
    $POST .= '&сreateAccountButton=Create Account!'; 
     
  3. KillDead

    KillDead

    Регистр.:
    11 авг 2006
    Сообщения:
    883
    Симпатии:
    540
    Если не поможет, попробуй задать пост через массив. Тоже была подобная проблема с гмайлом. Решил именно так.
     
    maneak нравится это.
  4. maneak

    maneak Читатель

    Заблокирован
    Регистр.:
    29 авг 2007
    Сообщения:
    279
    Симпатии:
    43
    Да, да - именно этого оно и просило :yahoo:
    У меня почему то даже в мыслях небыло через масив задавать, огромное вам спасибо!
    PHP_Master, извиняюсь за не совсем верно сформулированный вопрос. Поскольку запрос отсылается на сторонний сервис, то и об ошибке судить трудно, меня просто сливало на эрорепейдж.
     
Статус темы:
Закрыта.