Falls jemand irgendwann einmal etwas Ähnliches braucht, hier die etwas modifizierte PostToHost Funktion:
Username/Passwort: Falls nicht vorhanden, einfach leer lassen.
Daten: Können sowohl in der Form eines nomalen Strings, als auch in einem Array verpackt sein.
PHP:
function PostToHost($host,$ssl,$path,$user,$pass,$referer,$data){
//Daten anpassen
if(is_array($data)){
foreach($data as $name => $var){
$data_to_send .= $name."=".urlencode(urldecode($var))."&";
}
substr($data_to_send,0,-1);
}
else $data_to_send = $data;
//SSL einbinden, falls gewünscht
if($ssl){
$host = "ssl://".$host;
$port = 443;
}
else $port = 80;
//Verbindung öffnen
$fp = fsockopen($host,$port);
//Header erzeugen
fputs($fp,"POST ".$path." HTTPS/1.1\r\n");
fputs($fp,"Host: ".$host."\r\n");
if($user != "" && $pass != "") fputs($fp, "Authorization: Basic ".base64_encode($user.":".$pass)."\r\n");
fputs($fp,"Referer: ".$referer."\r\n");
fputs($fp,"Content-type: application/x-www-form-urlencoded\r\n");
fputs($fp,"Content-length: ".strlen($data_to_send)."\r\n");
fputs($fp,"Connection: close\r\n\r\n");
fputs($fp,$data_to_send);
//Antwort abfangen
while(!feof($fp)) {
$res .= fgets($fp, 128);
}
//Verbindung schliessen
fclose($fp);
//Antwort zurückgeben
return $res;
}
PHP:
$antwort = PostToHost("www.domain.de",true,"/pfad/datei.html","username","passwort","referer",$daten);
Username/Passwort: Falls nicht vorhanden, einfach leer lassen.
Daten: Können sowohl in der Form eines nomalen Strings, als auch in einem Array verpackt sein.
Zuletzt bearbeitet: