Работа с формами - нужна помощь

  • Автор темы Shenta
  • Дата начала
S

Shenta

#1
Подскажите пожалуйста - мне нужно, чтобы скрипт отправлял данные, введенные в форму, в аналогичную форму, но другого сайта. Ума не приложу, как это сделать. Подскажите пожалуйста. Нужен именно тот кусок кода, который будет отправлять данные в форму другого сайта. Остальное я знаю.
 
M

Magistr

#2
вот лови
PHP:
//Функция отправки данных на шлюз методом POST 
function getRequest(){

$data = "password=root&Uid=345";//Чё хочешь пиши, какбудто GET , а отправлять будем POST
$url = parse_url("http://куда отправлять);
if ($url['scheme'] != 'http') {
die('Only HTTP request are supported !');
}
$host = $url['host'];
$path = $url['path'];

$fp = fsockopen($host,80);

// send the request headers:
fputs($fp, "POST $path HTTP/1.1\r\n");
fputs($fp, "Host: ".$host."\r\n");
fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
fputs($fp, "Content-length: ". strlen($data) ."\r\n");
fputs($fp, "Connection: close\r\n\r\n");
fputs($fp, $data);

$result = '';
while(!feof($fp)) {
// receive the results of the request
$result .= fgets($fp, 128);
}
fclose($fp);
$exp=explode("Content-Type: text/html",$result);
$res = trim($exp[1]);

if($res == 'Ответ с того кода OK'){
return true;
}
return false;
}
 
A

Artem325

#3
PHP:
//Функция отправки данных на шлюз методом POST через CURL (я немного подправил из предыдущего поста)
function getRequest(){

$data = "password=root&Uid=345";
$url = "http://куда отправлять";

$ch=curl_init($url);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$ans=curl_exec($ch);

if($ans !== ''){
return true;
}
else{return false;}
}
Добавлено: P.S. Не проверял, но должно работать. Да и курл работает быстрее и проще сокетов
 
A

Artem325

#5
Если написать один символ "=", то левое приравняется правому, а если два, то просто их значения сравнятся.
 

vital

Больной Компом Детектед
29.01.2006
2 432
33
#6
то левое приравняется правому
Эмм нет. Проверка там же на не равность, а на НЕ равность(!=) а оператор НЕ равно выглядит именно так - !=, а не !==. Послденее -это тождественное сравнение... Так можно соответствие типов переменных проверить.. Впрочем, пофиг, код-то работать будет в обоих случаях.
 
A

Artem325

#7
Просто у меня случалось иногда приравнивание, поэтому я использую !==