Hallo
ich versuche mit einem socket eine datei zu einem script zu schicken ...
Leider kommt dort der <B>Dateityp</B> nicht an ...
(Name, Size, tmp_name werden angezeigt)
Die PostToHost Funktion sieht so aus:
Kann mir jmd helfen?
Die Datei ist zum Ausprobieren angehängt ...
Viele Grüße und Danke, Björn
ich versuche mit einem socket eine datei zu einem script zu schicken ...
Leider kommt dort der <B>Dateityp</B> nicht an ...
(Name, Size, tmp_name werden angezeigt)
PHP Code:
fa = @file("c:\\test.jpg");
$xf = "Content-type: image/pjpeg name = \"test.jpg\" \n\n" . implode("",$fa);
$data["url\"; filename=\"test.jpg"] = $xf;;
$x = PostToHost (
"www.bseweb.de",
80,
"/socket/postshow.php",
"http://www.bseweb.de/socket/postshow.php",
$data
);
PHP Code:
function PostToHost($host, $port, $path, $referer, $data_to_send)
{
$dc = 0;
$bo="-----------------------------305242850528394";
$fp = fsockopen($host, $port, $errno, $errstr);
if (!$fp) {
echo "errno: $errno \n";
echo "errstr: $errstr\n";
return $result;
}
fputs($fp, "POST $path HTTP/1.0\n");
fputs($fp, "Host: $host\n");
fputs($fp, "Referer: $referer\n");
fputs($fp, "User-Agent: Mozilla/4.05C-SGI [en] (X11; I; IRIX 6.5 IP22)\n");
fputs($fp, "Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png, */*\n");
fputs($fp, "Accept-Charset: iso-8859-1,*,utf-8\n");
fputs($fp, "Content-type: multipart/form-data; boundary=$bo\n");
foreach($data_to_send as $key=>$val) {
$ds =sprintf("--%s\nContent-Disposition: form-data; name=\"%s\"\n\n%s\n", $bo, $key, $val);
$dc += strlen($ds);
}
$dc += strlen($bo)+3;
fputs($fp, "Content-length: $dc \n");
fputs($fp, "\n");
foreach($data_to_send as $key=>$val) {
$ds =sprintf("--%s\nContent-Disposition: form-data; name=\"%s\"\n\n%s\n", $bo, $key, $val);
fputs($fp, $ds );
}
$ds = "--".$bo."--\n";
fputs($fp, $ds);
$res = "";
while(!feof($fp)) {
$res .= fread($fp, 1);
}
fclose($fp);
return $res;
}
Die Datei ist zum Ausprobieren angehängt ...
Viele Grüße und Danke, Björn