ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Post запрос
  #1  
Старый 30.10.2005, 00:47
Аватар для vvs777
vvs777
Познавший АНТИЧАТ
Регистрация: 16.11.2004
Сообщений: 1,257
Провел на форуме:
1331503

Репутация: 454


Отправить сообщение для vvs777 с помощью ICQ Отправить сообщение для vvs777 с помощью AIM
По умолчанию Post запрос

Народ, нужна помощь!
У меня на сайте стоит форма регистрации на другом сайте. Писал на Яваскрипте.
Код:
<form name="regfrm" method='POST' action="http://othersite.ru/cgi-bin/script.cgi">
<input type="text" name="code" size=10>
<input type="text" name="number" value=""> 
<input type="text" name="language" value="rus">
<textarea name="descr">Your description</textarea>
<input type="submit" Value="Go!">
</form>
<script>
// функция получает из строки запроса значение параметра по имени.
function Getparamvalue(search_string, param_name) {
param_name=param_name+'=';
var z='';
if (search_string!='') {
if (search_string.indexOf(param_name,0)!=-1) {
var startpos=search_string.indexOf(param_name,0)+param_name.length;
var endpos=search_string.indexOf('%26',startpos);
if (endpos<=startpos) endpos=search_string.length;
z=search_string.substring(startpos,endpos);
}
}
return z;
}
var p=window.location.search;
document.regfrm.code.value=Getparamvalue(p,'code').substring(0,6);
document.regfrm.number.value=Getparamvalue(p,'number');
//...
document.forms[0].submit();
</script>
Так вот.
Как мне сделать то же самое на PHP?
Если точнее, нет ли у кого готового кода формирования POST-запроса к скрипту с другого сайта с заданными значениями?
Если б это был GET, можно было бы прописать что-то типа
header('http://othersite.ru/cgi-bin/script.cgi?code=ABCD&number=bf01&language=rus&desc r=Your_description');
а так в descr многострочный текст, который должен быть передан именно так, как в textarea, без изменений.
 
Ответить с цитированием

  #2  
Старый 02.11.2005, 16:10
Аватар для fucker"ok
fucker"ok
Познавший АНТИЧАТ
Регистрация: 21.11.2004
Сообщений: 1,137
Провел на форуме:
2487541

Репутация: 761


По умолчанию

Код:
 function Post($server,$url,$post)
    {
        $q="POST $url HTTP/1.1\r\n".
        "Host: $server\r\n".
        "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)\r\n".
        'Accept:text/html, image/jpeg, image/png, text/*, image/*, */*'."\r\n".
        "Accept-Encoding: x-gzip, x-deflate, gzip\r\n".
        "Accept-Charset: windows-1251, utf-8;q=0.5, *; q=0.5\r\n".
        "Accept-Language:ru, en\r\n".
        "Keep-Alive: 300\r\n".
        "Proxy-Connection: keep-alive\r\n".
        "Referer: $server \r\n".
        //
        "Content-Type: application/x-www-form-urlencoded\r\n".
        "Content-Length: ".strlen($post)."\r\n".
        "\r\n".
        "$post\r\n";
        $s=fsockopen($server,80);
        fputs($s,$q);
        while (!feof($s)) $page.=fgets($s);
        fclose($s);
        return $page;
}
Передаёшь функции 3 параметра: сервер, урла, ПОСТ запрос.

Например
Post('othersite.ru,'/cgi-bin/script.cgi','login=123&pass=qwerty');

Последний раз редактировалось fucker"ok; 02.11.2005 в 16:16..
 
Ответить с цитированием

  #3  
Старый 03.11.2005, 10:12
Аватар для vvs777
vvs777
Познавший АНТИЧАТ
Регистрация: 16.11.2004
Сообщений: 1,257
Провел на форуме:
1331503

Репутация: 454


Отправить сообщение для vvs777 с помощью ICQ Отправить сообщение для vvs777 с помощью AIM
По умолчанию

А если descr многострочный - надо писать
Post('othersite.ru,'/cgi-bin/script.cgi','login=123&pass=qwerty&descr=stroka1%1 3%10stroka2%13%10итд'); ?
 
Ответить с цитированием

  #4  
Старый 03.11.2005, 12:09
Аватар для fucker"ok
fucker"ok
Познавший АНТИЧАТ
Регистрация: 21.11.2004
Сообщений: 1,137
Провел на форуме:
2487541

Репутация: 761


По умолчанию

Можно и так, или обработать через urlencode();
 
Ответить с цитированием

  #5  
Старый 05.11.2005, 00:18
Аватар для vvs777
vvs777
Познавший АНТИЧАТ
Регистрация: 16.11.2004
Сообщений: 1,257
Провел на форуме:
1331503

Репутация: 454


Отправить сообщение для vvs777 с помощью ICQ Отправить сообщение для vvs777 с помощью AIM
По умолчанию

А самое главное не заметил. А без fsockopen как-то можно?
 
Ответить с цитированием

  #6  
Старый 10.11.2005, 20:41
Аватар для fucker"ok
fucker"ok
Познавший АНТИЧАТ
Регистрация: 21.11.2004
Сообщений: 1,137
Провел на форуме:
2487541

Репутация: 761


По умолчанию

Curl, но не факт...
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Защита Web-сервисов с использованием mod_security w00d Чужие Статьи 1 11.07.2005 14:47
Внедрение Sql кода с завязанными глазами k00p3r Чужие Статьи 0 12.06.2005 20:48
SQL Injection для чайников, взлом ASP+MSSQL k00p3r Чужие Статьи 0 12.06.2005 12:42



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ