Hallo !
ich habe folgendes Script, das tadellos funktioniert:
$host = 'www.example.com';
$port = 80;
$page = '/zielscript.php';
$referer = "http://".$_SERVER ['HTTP_HOST'].$_SERVER['PHP_SELF'];
$post = array(
'Anrede'=> 'Herr',
'Name'=> 'Testperson',
);
$params = '';
$flag = 0 ;
$argv = $post;
//String erzeugen
foreach ($argv as $key=>$value) {
if ($flag!=0) {
$params .= "&";
$flag = 1;
}
$params.= $key."="; $params.= utf8_encode($value);
$flag = 1;
}
$length = strlen($params);
$fp = fsockopen($host,$port,$errno,$errstr,1000) or exit($errstr."--->".$errno);
$header = "POST $page HTTP/1.1\r\n";
$header .= "Host:$host\r\n";
$header .= "Referer:$referer\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: ".$length."\r\n";
$header .= "Connection: Close\r\n\r\n";
$header .= $params."\r\n";
fputs($fp,$header);
fclose($fp);
Jetzt muss ich die Daten allerdings per GET übertragen weil das Zeilscript nur noch GET annimmt. Ersetze ich im Header POST durch GET kommen die Daten nicht mehr an.
Soll ich anstatt fsockopen einfach ein fopen mit Url machen und alle Parameter an die Url hängen ? Oder kann ich das obige Script einfach umbauen ?
Herzlichen Dank für alle Tipps.