externe PHP-Datei einbinden

mcphilli

Erfahrenes Mitglied
Hallo,
ich habe auf einer anderen Domain ein Script liegen welches ich einbinden möchte. Dazu muss ich vorweg schon einmal sagen mein Server unterstützt kein register_global. Das Script führt ein paar Operationen aus und gibt dann ein Wert zurück. Nur mein Problem ist, das er noch nicht einmal das Script öffnet. Auf mein Localhost macht er das ohne Probleme nur auf mein Server nicht.

PHP:
 <?php
$returned='';
$fp=@fopen("http://www.domain.de/script.php?a=10&b=20","r");
if($fp){
  while($line=fgets($fp,1000)){
    $returned.=$line;
  }
  fclose($fp);
}
echo $returned;
?>

Kennt jemand eine Alternative wie man ein externes Script einbinden kann?

MfG mcphilli
 
Der Grund warum es bei Dir lokal aber nicht auf dem Server laeuft duerfte die Einstellung allow_url_fopen sein.
Nur wenn diese auf on steht kann mittels fopen() (und aehnlichen Funktionen, wie z.B. auch include()) URLs oeffnen. Das Problem dabei ist, dass man bei allow_url_fopen unheimlich aufpassen muss da dies die Tore fuer Cross-Site-Scripting gewaltig aufreisst.
Dementsprechend wird dies in der Regel auf off gestellt.

Alternativ kannst Du mit fsockopen() mit dem Server verbinden und dann ueber eine standardkonforme HTTP-Anfrage die gewuenscht Datei bekommen.
Die Suchfunktion sollte da einiges zu zu Tage foerdern und zum Thema HTTP mit PHP hab ich auch ein Tutorial verfasst.
 
Eine andere Frage wären, ob es überhaupt notwendig ist, die Skripte auf unterschiedlichen Servern zu speichern. Denn über HTTP bekämst du auch nur die Ausgabe des Skriptes.
 
Zurück