WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik


Homepage und Webhosting-Forum

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.


Forum » PHP & MySQL » [gelöst] Datensatz von anderem Server holen... » Antworten
Benutzername:
Passwort: Passwort vergessen?
Inhalt der Nachricht: Fett | Kursiv | Unterstrichen | Link | Bild | Smiley | Zitat | Zentriert | Quellcode| Kleiner Text
Optionen: Emailbenachrichtigung bei Antworten
 

Die letzten 5 Postings in diesem Thema » Alle anzeigen
von TeX
ich werde das mal probieren, danke erstmal dafür *verbeug* .

schönen abend noch
von languitar
auf deinem Server, der die Daten besitzt machst du eine Datei anfrage.php auf der du mit echo serialize($deinarraymitdaten); deine daten ausgeben lässt und auf dem Server, der die Daten holen soll, machst du da wo du die Daten brauchst folgendes:
1: 
2:
$rohdaten = file_get_contents('http://datenserver.domain/anfrage.php');
$daten = unserialize($rohdaten);

So solltest du die Daten da haben...

Nicht getestet und auch überhaupt nicht gegen Angreifer etc. abgesichert.

War das das gesuchte?
von TeX
Hmm, ich hab nun schon Ewigkeiten damit verbracht Eure Lösung umzusetzen, aber nix zu machen. Wärt Ihr so nett mal 2 kleine Scripts zu posten wie man denn die Sache umsetzt (mit serialized). Also eins wo der Datensatz erstellt wird und eins was auf einem anderen Server liegt und darauf wieder zugreift.

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9:
include("http://www.clanintern.de/eforum.php4?clan=29194&type=viewthread&id=747094");
for($pid = 1; $pid <= count($post); $pid++)
{
	echo "#".$pid." by <b>".$post[$pid]['posted_by']."</b><br>
	 ".date("d.m.y H:i:s",$post[$pid]['posttime'])."<br>
	 ".(($ava = $post[$pid]['avatar']) != "" ? "<img src=\"$ava\"><br>" : "").$post[$pid]['clanname']."<br>
	 ".$post[$pid]['rank']."
		\n\n";
}


Fügt das mal in eine php-Datei ein, Ihr werdet sehen das das geht, die Frage ist nur wie geht das? Ich bin mit meinem Latein am Ende und hoffe Ihr könnt mir helfen, thx schonmal.

mfg
von TeX
Jop, is richtig, hatte mich nur gewundert weil die das auf www.clanintern.de auch so machen. Man muß sich nen kleines Script auf den eigenen Webspace schmeißen und darüber wird z.b. ein Forum geladen das aber auf einem anderen Server installiert ist.

Ein kleiner Ausschnitt von dem Script hab ich hier mal:

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11:
for($tid = 1; $tid <= count($thread); $tid++)
{
print("<tr bgcolor=\"".effekt()."\">
<td align=center>".($thread[$tid]['closed'] ? "<b>closed</b>" : "")."</td>
<td><a href=\"".$_SERVER['PHP_SELF']."?open=viewthread&id=".$thread[$tid]['id']."\">".($thread[$tid]['sticky'] ? "<i>".$thread[$tid]['topic']."</i>" : $thread[$tid]['topic'])."</a></td>
<td align=center>".$thread[$tid]['started_by']."</td>
<td align=center>".$thread[$tid]['replys']."</td>
<td align=center>".date("d.m.y H:i:s",$thread[$tid]['lastmsg'])."</td></tr>");
}	


Dieses Array wird auf diesem Server erzeugt der das Forum enthält. Hier wird durch das Array der HTML-Code erzeugt und auf der eigenen HP ausgegeben.
von subjective
Man macht kein include() auf http-Adressen. In diesem Fall wird das PHP der aufgerufenen Seite schon dort ausgeführt - PHP verhält sich wie ein Browser. Es gibt jedoch einen Unterschied. Wenn die URL PHP-Quellcode zurückgibt, wird dieser vom lokalen PHP interpretiert. Falls ein Angreifer also diese Ausgabe beieinflussen kann, kann er beliebigen PHP-Code bei dir ausführen lassen.

languitar hat ja bereits eine Lösung beschrieben. Alternativ kann man das Array natürlich auch als CSV oder XML ausgeben lassen - ja nach Daten und weiterer Verwendung. Wichtig ist, das man diese Daten genau wie Benutzereingaben behandelt - sie sind per se erstmal böse und müssen geprüft werden.

Nach oben