Ergebnis 1 bis 9 von 9

Thema: [PHP] Externe Website aufrufen

  1. #1

    [PHP] Externe Website aufrufen

    Halli Hallo,

    ich habe leider keinen blassen Dunst von PHP und hätte da eine Frage.

    Zwar möchte ich, dass meine Website eine externe Website aufruft und anzeigt.
    Das habe ich mir so ähnlich vorgestellt:

    Man ruft auf: www.meinhost.de/userjensmann/index.php. Dann bekommt man zB die Seite von Google zu sehen. Ich möchte also, dass die index.php entweder den Inhalt von google.de anzeigt oder herunterlädt. Sollte es nur eine Funktion zum Herunterladen geben, dann bräuchte ich nur den Text.

    Ich hoffe, ihr koönnt mir helfen sofern soetwas mit PHP machbar ist.

    Grüße,
    Jens

    PS: Mein Hoster ist PHP-fähig. Ich glaube, der unterstützt die neuste Version. Falls das von Belang ist, kann ich auch noch mal nachschauen.

  2. #2
    PHP-Code:
    <?php

    echo file_get_contents("http://www.google.com/");
    Das sollte mit PHP 5 funktionieren – aber nur, wenn in der php.ini die Direktive allow_url_fopen auf 1 steht.
    Für PHP 4 geht's ganz ähnlich, aber die Direktive dürfte eher das Problem sein: die haben (afaik) die meisten Betreiber deaktiviert, und werden es dich wahrscheinlich auch nicht aktivieren lassen.

    Ansonsten fiele mir eigentlich nur Weiterleiten ein, was anderes bekommst du mit PHP wohl nicht hin.

    Ahja, wie legal das wäre, ist imo auch fraglich. *kratz*

  3. #3
    Zitat Zitat von test.php
    Warning: file_get_contents() [function.file-get-contents]: URL file-access is disabled in the server configuration in /users/jensma/www/test.php on line 3

    Warning: file_get_contents(http://www.google.com/) [function.file-get-contents]: failed to open stream: no suitable wrapper could be found in /users/jensma/www/test.php on line 3
    Mist.

    edit: Hat jemand einen Anbieter parat, der den Befehl unterstützt? Größe und Werbeeinblendungen sind egal.

    Geändert von jensma (14.03.2009 um 19:52 Uhr)

  4. #4
    Lass dir mal die PHPInfo ausgeben und schau, ob cURL mit eincompiliert wurde. Wenn das so ist, kannst du den Seiteninhalt auch darüber abrufen.

    PHP-Code:
    $oHttpRequest curl_init();
    curl_setopt$oHttpRequestCURLOPT_URL$sUrl );
    curl_setopt$oHttpRequestCURLOPT_RETURNTRANSFER);
    curl_setopt$oHttpRequestCURLOPT_CONNECTTIMEOUT15 );
    curl_setopt$oHttpRequestCURLOPT_USERAGENT,  'Mozilla/5.0 (Windows; U; Windows NT 6.0; de; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6 (.NET CLR 3.0)' );

    $sStream curl_exec$oHttpRequest );
    curl_close$oHttpRequest ); 
    Edit: Vieleicht geht auch 'fgets()'. Siehe PHP Docu für weiteres.

  5. #5
    Zitat Zitat
    Fatal error: Call to undefined function curl_init() in /users/jensma/www/test3.php on line 2
    Uhm, das bekomme ich zurück. Ich versuche jetzt einen komplett anderen Weg

  6. #6
    Curl ist eh ziemlich selten installiert ...
    Folgendes sollte hingegen funktionieren:

    PHP-Code:
    <?php
    function getRemoteFile($address) {
        
    $info parse_url($address);
        if(
    $fp fsockopen($info['host'], (isset($info['port']) ? $info['port'] : 80), &$errno, &$error80)) {
            
    fwrite($fp'GET ' $info['path'] . (isset($info['query']) ? '?' $info['query'] : '') . ' HTTP/1.1' "\r\n");
            
    fwrite($fp'Host: ' $info['host'] . "\r\n");
            
    fwrite($fp'Connection: close' "\r\n\r\n");

            
    $getContent false;
            
    $content '';
            while(!
    feof($fp)) {
                
    $line fgets($fp1024);
                if(!
    $getContent && $line == "\r\n") {
                    
    $getContent true;
                } else {
                    
    $content .= $line;
                }
            }
            return 
    $content;
        } else {
            die (
    $errno '# ' $errro);
        }
    }

    echo 
    getRemoteFile('http://www.google.de/');

  7. #7
    Die Frage ist: Was hast Du denn genau davon? Ich sehe es noch kommen das Du eines Tages versucht eine Website zu hijacken und Suchmaschinen Deine Website/s deshalb ignorieren werden für die folgenden Monate.

  8. #8
    Zitat Zitat von Maisaffe Beitrag anzeigen
    Die Frage ist: Was hast Du denn genau davon? Ich sehe es noch kommen das Du eines Tages versucht eine Website zu hijacken und Suchmaschinen Deine Website/s deshalb ignorieren werden für die folgenden Monate.
    Sowas muss nicht immer gleich böse sein Es gibt direkt eine standartisierte Schnittstelle, welche auf soetwas aufbaut. Nennt sich REST(full) und arbeitet meist mit XML Dateien - im grunde eine Art abgespecktes SOAP.

  9. #9
    Zitat Zitat von Freezy Beitrag anzeigen
    Sowas muss nicht immer gleich böse sein Es gibt direkt eine standartisierte Schnittstelle, welche auf soetwas aufbaut. Nennt sich REST(full) und arbeitet meist mit XML Dateien - im grunde eine Art abgespecktes SOAP.
    Sieht allerdings soweit nicht nach REST/SOAP aus - und anhand seiner Beschreibung klingt es nicht so als würde er diese Funktionalitäten kennen.

    Nachtrag: Der User ist Böse!111</paranoia>

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •