mmh ich weiss, uralter Thread, aber vielleicht hilft das ja:
Suchen:
Ersetzen mit:Code:$fb=@fopen("http://www...usw.....","r"); if($fb){ while($line=fgets($fb,1000)) { $file1.=$line; } fclose($fb); }
Vorher wie oben gesagt die "socketfile" Funktion in die functions.lib.php eintragen.Code:$farray = socketfile("http://www....usw..."); if ($farray) foreach ($farray as $line) $file1.=$line;
Ich frage mich nur.. wenn ein Provider allow_url_fopen auf OFF setzt, würde er dann nicht gleich noch fsockopen() sperren? (fsockopen() wird von socketfile() verwendet.)
Achtung: ungetestet, keine Garantie oder Rücknahme.
edit: bplaced.net verbietet "fsockopen()"
noch ein edit: hier etwas code mit dem ich bei bplaced getestet habe, kann man in eine php-datei einfügen, auf den webspace des zu testenden providers hochladen und über den webserver per http öffnen:
Code:<? function socketfile($url) { // URL zerlegen $parsedurl = @parse_url($url); // Host ermitteln, ungültigen Aufruf abfangen if (empty($parsedurl['host'])) return null; $host = $parsedurl['host']; // Pfadangabe ermitteln if (empty($parsedurl['path'])) $documentpath = '/'; else $documentpath = $parsedurl['path']; // Parameter ermitteln if (!empty($parsedurl['query'])) $documentpath .= '?'.$parsedurl['query']; // Port ermitteln $port = empty($parsedurl['port'])?80:$parsedurl['port']; // Socket öffnen $fp = fsockopen ($host, $port, $errno, $errstr, 30); if (!$fp) return null; // Request senden fputs ($fp, "GET {$documentpath} HTTP/1.0\r\nHost: {$host}\r\n\r\n"); // Header auslesen und verwerfen do { $line = chop(fgets($fp)); } while (!empty($line) and !feof($fp)); // Daten auslesen $result = Array(); while (!feof($fp)) $result[] = fgets($fp); // Socket schliessen fclose($fp); // Ergebnis-Array zurückgeben return $result; } ################################################################################################################ $url = "http://www.google.de/"; ################################################################################################################ $fb=fopen($url,"r"); if($fb){ while($line=fgets($fb,1000)) { $file1.=$line; } fclose($fb); } echo $file1; ################################################################################################################ echo "=========== socketfile / fsockopen : ===================<br>\n"; unset($file1); $farray = socketfile($url); if ($farray) foreach ($farray as $line) $file1.=$line; echo $file1; ?>



Zitieren