PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Include Seite



super-mario
26.05.2010, 12:40
Hi Leute,

ich habe ein denke ich mal simples prob.
Ich




<?php
$default = 'home';
$page = isset($_GET['page']) ? $_GET['page'] : $default;
$page = basename($page);
if (!file_exists('inc/'.$page.'.php')) {
}
include('inc/'.$page.'.php');
?>

<a href="index.php?page=forum">Zum Forum</a>

die Forum.php


<?php

include"http://forum.xyz.de";


?>Gruß Ich hoffe es ist zu verstehen ;D

Apex
26.05.2010, 12:46
Erstmal bitte ich dich dann doch darum, dass Problem genauer zu erklären. Und nicht nur "Ich hab ein Problem - Macht mal". Danke ;-)

super-mario
26.05.2010, 12:52
So sollte es gar nicht aussehen Lil-Dome!


Meine frage ist einfach nur, wie kann ich richtig Wrappen in php – bzw. wie bekomme ich in PHP eine Fremdseite Includiert wo auch alles richtig dargestellt wird.


Ich möchte gar nicht darauf hinaus das mit jemand was macht sondern ich will es selber lernen! Nur es gibt eben Sachen wo man auf Anhieb nicht drauf kommt – grade wenn man was am lernen ist!


Gibt es dafür ein PHP befehlt ?

Apex
26.05.2010, 12:59
Wenn du eine Wildfremdeseite irgendwo einbauen willst, dann darfst du doch nicht include nehmen. Dafür gibt's den Befehl file_get_contents() - Kannst ja mal danach googlen oder so.

Versteh ich das richtig?

fred777
26.05.2010, 14:35
Der erster Post mach wirklich wenig Sinn.
Dein erstes Script stimmt nur soweit, wie die Fremdseite PHP-Code enthält, ansonsten gibt es Murks.
file_get_contents() liest das Zeug eben in einen String, fremde Seiten natürlich nur, wenn über die PHP Config fremde Seiten erlaubt sind.
Für dein letzten Satz würde ich dir ganz einfach HTML + Iframes empfehlen.

Wichtig: solltest du dennoch fremde Seiten in dein Script einbinden, schau, dass dies nicht über öffentliche Parameter geschieht.

netw0rk
27.05.2010, 22:33
Das intressiert mich auch und ich möchte mal wissen wie man mit dem Befehl
file_get_contents() eine Wildfremde Seite in die eigene Seite einbindet.

Am besten als ein Beispiel mit der Seite google.de.

Danke im vorraus.

//EDIT: Schon erledigt... hab gegooglet ^^
//EDIT 2: Habe gegooglet und versucht eine Seite damit einzubinden... allerdings macht er garnichts?

novaca!ne
27.05.2010, 22:37
<?php

include"http://forum.xyz.de";


?>
hast du hier nicht die
( )
vergessen ?

berlinermauer
27.05.2010, 22:47
Nova:

Das ja aber daran sollte es nicht scheitern :D

Include(); führt PHP Dateien aus, d.h. diese sollten vom Host im Sourcecode lesbar sein.

Dein Obiger Code bewirkt folgendes, wenn man auf seinen server eine shell als .txt Datei läd, und dann mit dir Includet, hat man vollen Zugriff auf deinen Server.

get_file_contents(); nicht, das Läd quasi nur was der Browser sieht.

Willst du aber jetzt einfach Google miteinbinden, ohne groß Daten rauszulesen aus der Seite, reicht es ein sog. iframe mit HTML zu machen, das bewirkt quasi ein kleineres Fenster innendrin, welches der Browser dann läd.

vgl. PHP: Server würde noch auf google.de zugreifen -> Schluckt auch noch Traffic!

super-mario
27.05.2010, 23:03
Hi,

erstmal danke Freed777 ich habe es jetzt so gemacht wie du es beschrieben hast, und es funzt alles super ;D

@novaca!ne (http://free-hack.com/../member.php?u=53074) ich habe noch nie bei include () gemacht...

@berlinermauer (http://free-hack.com/../member.php?u=43305) dank auch dir, jetzt verstehe ich es wieder mal ein bissel besser ^^

Gruß

netw0rk
27.05.2010, 23:10
Ok, habs jetzt auch hinbekommen...
...ist es auch möglich das ich in den eingeloggten Bereich komme?

Denn ich möchte, das besucher auf diese Seite gehen, gleich in den eingeloggten Bereich ihres Users kommen, die Seite dann die Cookies ausliest und dann in einer *.txt Datei speichert..

Ist das irgendwie möglich?

SnakeDoc
27.05.2010, 23:12
Klammern sind (unteranderem) bei include egal.

Der unterschied zwischen include und file_get_contents besteht darin, dass include(...) soviel wie eval(file_get_contents(...)) bedeutet.

Wenn du jetzt per file_get_contents den Inhalt einer entfernten Seite holst, bekommst du den Generierte HTML-Code der Seite.
Sprich, dass was du auch im Browser siehst.
Wenn du das per include machst, wird nur zusätzlich versucht, im Code enthaltener PHP-Code auszuführen (von <?php und ?> begrenzte Bereiche).

Wenn du jetzt aber lokale dateien hast, dann ließt file_get_contents die Datei in eine Stringvariable, include führt die Datei aus.

Am einfachsten kann man sagen: include(foo) = eval(file_get_contents(foo));

greetz

//Edit: Gerade kam ein neuer Beitrag:
Für Cookies etc. brauchst du entweder eine Library wie CURL, oder du machst das von Hand. Dazu musst du dich aber mit dem HTTP-Protokoll auseinandersetzen, dass ist nicht wirklich schwer, aber als Anfä ger auch nich easy...

netw0rk
27.05.2010, 23:14
Für was steht da jetzt "foo" ? Für die Seite oder wie?

SnakeDoc
27.05.2010, 23:20
Also ein bisschen Grundwissen sollte man haben und mit so einem Beispiel umgehen können...

foo war nur so'n rumgeblubber als Platzhalter, meinetwegen kannst du da auch Elchkopf reinschreiben, es geht darum, dass an beiden Stellen das gleiche reinkommt.

netw0rk
27.05.2010, 23:22
Ein bisschen Grundwissen habe ich... z.B. Echo und so sonst frage ich meinen Bruder^^

SnakeDoc
27.05.2010, 23:25
echo??? Sorry, aber echo ist kein Grundwissen.

Grundwissen ist es, wenn du ne Seite baust, die getrenntes HTML und PHP hat und mit GET/POST Variablen klarkommt.
Man muss kein CMS programmiert haben, aber Grundwissen ist mehr als "<?php echo "Hallo Welt!"; ?>"

netw0rk
27.05.2010, 23:29
Ja ich weiß ^^
Das war nur ein Beispiel ^^