• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

include einbinden

Status
Für weitere Antworten geschlossen.

bit61

Neues Mitglied
Hallo,

ich habe jetzt durch das Forum herausgefunden, dass man statt Frames include (php) nutzen kann.

Meine Frage ist - da ich einige Seiten in Unterordnern habe -, ob ich die include-Dateien (also dort wo der Inhalt drin ist) nicht auf folgende Weise einbinden kann (absolut):

PHP:
<?php include 'http://www.seite.de/php/navi.php' ?>
Das geht leider nicht, habe es schon versucht. Ich kann die Seiten nur auf folgende Art einbinden (relativ):

PHP:
<?php include 'php/navi.php' ?>
Ist es irgendwie möglich das auf erstere Weise hinzukriegen?

f. G.
 
Werbung:
Mir ist die Include funktion nur so bekannt
PHP:
<? include('datei.php'); ?>
Dein Fehler werden die vergessenen Klammern sein. Probiers einfahc mal mit Klammern

mfg :arrow: RaZ0oR ;)
 
Externe Dateien wie http://www.seite.de/php/navi.php kannst Du nur einbinden, wenn in der PHP-Konfiguration des von dir verwendeten Servers die Option allow_url_fopen aktiviert ist. Wenn dies nicht der Fall ist kannst Du auch diese Adresse nicht includen.

Btw. wäre es sowieso schlecht auf diesem Weg Dateien zu includen die auf deinem eigenen Webspace liegen da dadurch der Traffic erheblich steigen kann.

@RaZ0oR: ob mit oder ohne Klammern ist im Prinzip egal und jedem selbst überlassen. Siehe auch: PHP: include - Manual
 
Werbung:
PHP:
<?php include 'http://www.seite.de/php/navi.php'; ?>
Das ist denke ich mal nur möglich, wenn in der php.ini die Direktive allow_url_fopen auf On gesetzt ist. Laienhaft heisst das, dass bei einem include() bzw. require() auch eine URL angegeben werden kann und hier liegt auch der Knackpunkt: Stelle dir mal vor es wird ein fremdes Skript eingebunden, welches eventuell so kompromittiert ist, dass es den Server schädigen könnte?

Die Frage ist: Warum willst du einen absoluten Pfad bzw. eine URL im inlucde angeben? Wenn du direkt vom root Verzeichnis ausgehen willst, dann kannst du den Include auch so setzen:

PHP:
<?php include '/php/navi.php'; ?>
MfG

NewLord

Edit:

threadi war schneller *gg*
 
na, weil die pfadangaben der bilder nichtmehr stimmen.

pass sie an, oder schau dir mal mod_rewrite (google.de) an.
ich würde dir ersteres ans herzchen legen.
 
Hallo,

include() geht vom Filesystem des Rechners aus und nicht vom Document-Root des Webservers. Daher muss bei Angabe eines absoluten Pfades das Document-Rootverzteichnis davor angegeben werden.

Code:
<?php include($_SERVER["DOCUMENT_ROOT"]."/php/navi.php"); ?>
wird funktionieren.

Gruß,
-Efchen

P.S.: Frames kann man nicht mit include ersetzen. Frames bestehen aus mehreren zusammengewürfelten positiven Eigenschaften, die man alle auf irgendeine Weise umsetzen kann. Der Vorteil, gleichbleibende Elemente einer Seite nicht immer neu schreiben zu müssen, lässt sich mit include() umsetzen. Layout macht man mit CSS. Feststehende Elemente mit CSS und position:fixed, usw.
 
Werbung:
Externe Dateien könnte man auch so einbinden, solange es kein PHP drin ist:

PHP:
<?
$html = implode ('', file ("http://html.de"));
// In der Variablen $html liegt der Wuelltext der Seite
echo $html; // oder was auch immer
?>
 
was kein include mehr ist sondern das parsen einer externen seite....
efchen hat's doch schon geschrieben, wie es richtig geht.
 
Das kann auch nicht gehen ,da du dir ja sonst von anderen Seiten die sachen zum nutzen machen könntest !

Gruß MS-DOS;Jump
 
Werbung:
Das kann auch nicht gehen ,da du dir ja sonst von anderen Seiten die sachen zum nutzen machen könntest !

Gruß MS-DOS;Jump

doch, das geht (zumindest mit dem reinen html-code), solange es in der php.ini freigegeben ist, kann man eine url aufrufen und parsen.

an den quellcode eines php-scripts kommt man so aber NIE, sonst würde man ja einfach z.b. ein config-file auslesen und das passwort läge direkt vor einem.
 
Werbung:
jaein, man kann auch eine txt datei includen oder eine geparste php datei welche php source enthält. :roll:
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben