Kropff
21-10-2004, 13:25
hallo zusammen, ich stehe vor folgenden problemen: mit
$file = 'ID 00006973.xml';
$host = 'xxx.xxx.xxx.xxx';
$port = 80;
$path = '/test/form.php';
srand ((double) microtime() * 1000000);
$boundary = "---------------------------".substr(md5(rand(0,32000)),0,10);
$data = "--$boundary\r\n";
$content_file = join('', file($file));
$data .= 'Content-Disposition: form-data; name="file"; filename="'.$file.'"'."\r\n";
$data .= 'Content-Type: multipart/mixed'."\r\n\r\n";
$data .= $content_file."\r\n";
$data .= '--'.$boundary;
$data .= '--'."\r\n\r\n";
$msg = 'POST '.$path.' HTTP/1.0'."\r\n";
$msg .= 'Content-Type: multipart/form-data; boundary='.$boundary."\r\n";
$msg .= 'Content-Length: '.strlen($data)."\r\n\r\n";
$result = '';
$socket = fsockopen ($host, $port);
fputs ($socket, $msg.$data);
while (!feof ($socket)) $result .= fread($socket,32000);
fclose($socket);
echo $result;
lade ich ein xml-dokument auf einen anderen server. klappt auch alles hervorragend bis auf zwei dinge.
1. wie zum teufel komm ich an das xml-dok heran wenn das in einem unterordner z.b. blubb liegt.
$file = 'blubb/ID 00006973.xml'; oder absolut mit
$file = '/www/blubb/ID 00006973.xml'; klappt das natürlich nicht, weil file ja nur den namen der datei beinhaltet.
2. ich teste das gerade mit unserem intranet-server und unserem webserver. wenn ich bei host(der webserver) die ip-adresse angebe, läuft das anstandslos, wenn ich dagegen die url www.bla.de angebe, wird der server nicht gefunden.
gruss
peter
$file = 'ID 00006973.xml';
$host = 'xxx.xxx.xxx.xxx';
$port = 80;
$path = '/test/form.php';
srand ((double) microtime() * 1000000);
$boundary = "---------------------------".substr(md5(rand(0,32000)),0,10);
$data = "--$boundary\r\n";
$content_file = join('', file($file));
$data .= 'Content-Disposition: form-data; name="file"; filename="'.$file.'"'."\r\n";
$data .= 'Content-Type: multipart/mixed'."\r\n\r\n";
$data .= $content_file."\r\n";
$data .= '--'.$boundary;
$data .= '--'."\r\n\r\n";
$msg = 'POST '.$path.' HTTP/1.0'."\r\n";
$msg .= 'Content-Type: multipart/form-data; boundary='.$boundary."\r\n";
$msg .= 'Content-Length: '.strlen($data)."\r\n\r\n";
$result = '';
$socket = fsockopen ($host, $port);
fputs ($socket, $msg.$data);
while (!feof ($socket)) $result .= fread($socket,32000);
fclose($socket);
echo $result;
lade ich ein xml-dokument auf einen anderen server. klappt auch alles hervorragend bis auf zwei dinge.
1. wie zum teufel komm ich an das xml-dok heran wenn das in einem unterordner z.b. blubb liegt.
$file = 'blubb/ID 00006973.xml'; oder absolut mit
$file = '/www/blubb/ID 00006973.xml'; klappt das natürlich nicht, weil file ja nur den namen der datei beinhaltet.
2. ich teste das gerade mit unserem intranet-server und unserem webserver. wenn ich bei host(der webserver) die ip-adresse angebe, läuft das anstandslos, wenn ich dagegen die url www.bla.de angebe, wird der server nicht gefunden.
gruss
peter

