Quelltext von anderem Server

moistwanted

Erfahrenes Mitglied
Moinsen!

hab ma ne frage!

ich versuche den quelltext von einer Seite per php auszulesen uund dann in einer neuen Datei zu speichern!

Habs schon mit fopen und include probiert aber ich kriege immer die selbe Fehlermeldung:

Warning: fopen(): php_network_getaddresses: gethostbyname failed in c:\programme\apache group\apache\htdocs\_gb\index.php on line 22

Warning: fopen(http://www.google.de): failed to open stream: No error in c:\programme\apache group\apache\htdocs\_gb\index.php on line 22

Quelltext:
$datei = fopen("http://www.google.de", "r");

es ist egal welche seite ich versuche, solange die datei nicht auf meinem server lieg geht es nicht!
Kann mir jemand helfen

mfg moistwanted
 
1) Was hast du vor? Den Programmcode von Google "klauen"? Vergiss es, klappt nicht und so erst recht nicht.

2)
es ist egal welche seite ich versuche, solange die datei nicht auf meinem server lieg geht es nicht!
Und das ist gut und richtig so.

3) Bitte halte dich in Zukunft an unsere Netiquette bezüglich Groß-/Kleinschreibung.
 
Sorry wegen der Groß- und Kleinschreibung!

die url Wrapper in der PHP ini ist auf on:
allow_url_fopen = On

ich will Daten aus einer Mysql-Datenbank von einer Seite vom Kumpel!
Ich hab die Erlaubnis dafür!

Man kommt aber nur übern localhost an die Datenbank!
Also hat er mir ne Seite gemacht , in der ich die Datenbank sehen kann!

Ich brauche also nur den vom Server geschickten Code!
Ich will also nichts klauen, da ich mir auch jeden morgen die Mühe machen könnte über Quelltext anzeigen und dann Copy&Paste!
Ist mir aber bei den Datenmengen zu mühsam!
die PHP Sachen hab ich sowieso fast alles geschrieben!

google.de war nur ein Beispiel!

Das ganze ist auf jeden Fall möglich ich kriege es nur nicht hin!

Siehe:
http://webdienst.webdienst.de/readgoogle/
 
Dann soll er für eine bestimme IP den Verkehr zur DB zulassen...
Wenn du keine statische hast ist das halt schlecht.
 
Da er seine Datenbank nicht konfigurieren kann, geht das leider nicht!
Er hat nur eine vorkonfigurierte DB und hat keine Möglichkeit da was zu ändern!

Könnte mein Problem mit einer Einstellung in der php.ini oder httpd.conf
beseitigt werden?
Wie schon gesagt:
allow_url_fopen = On

Was müsste ich sonst noch einstellen?
 
Er könnte auch einfach ein Script bauen, dem du dein Query auf http-Wege schickst. Dies gibt dir dann das fertige Array zurück, sprich er macht ein serialize() auf das Array, gibt dies per echo aus. Du liest es mit file() o.ä. über den http-Request ein, machst ein unserialize() und fertig. Dann hast du deine Daten.

Das ganze geht dann ohne fopen ;)
 
Das wäre eine Idee, aber wie schick ich ihm mein Query?

Wie kann ich es schicken und wie nimmt mein Kumpel das an?
Hab leider keine Ahnung wie ich das machen soll!
 
Das Script dafür ist mal grob schnell gemacht:

PHP:
<?php

//connect und co

$sth = mysql_query($_GET['query']);

//Bei Select ist der Rückgabewert eine Ressource...

//Wenn keine Ressource kommt 
if( !is_ressource($sth) )
       if( $sth === TRUE)         //Z.B. Bei erfolgreichem INSERT etc
             echo 'TRUE';
        else
              echo 'FALSE '.mysql_error();

else
 {
   while( $row = mysql_fetch_assoc($sth) )
           $daten[] = $row;
    echo serialize($daten);
}

?>

Der Aufruf deines Script könnte dann sein
PHP:
$return = file('http://..../query.php?query=SELECT.....');

//Wenn die ersten 5 Zeichen = 'FALSE ', fehler ausgeben
if( substr($return,0,5) != 'FALSE ' )
       echo substr($return,5);

//Wenn kein TRUE dri nsteht  Daten zurücklesen
elseif( substr($return,0,4) != 'TRUE' )
       $daten = unserialize(trim($return));

?>

So mal grob zum Auslesen...
 
Zurück