Seite 1 von 1
PHP Includes in den Modulen erlauben
Verfasst: So 8. Dez 2013, 14:39
von contenidoAmateur
Hallo,
ich habe eine Statische Seite und würde gerne in einem Bereich Contenido einsetzen. Hierfür würde ich gerne Teile des Layouts, bis auf den Content Bereich, übernehmen und via PHP-Includes einbinden. Auf der restlichen Seite funktioniert dies super und in Contenido habe ich dann absolute Pfade gesetzt und diese vorher getestet.
Trotzdem wird im Frontend nichts ausgegeben und es gibt auch keine Fehlermeldung.
Gibt es einen Grund warum in den Modulen keine PHP-Includes angenommen werden oder liegt es daran, dass die Dateien außerhalb der Installation liegen, weil ich in den Modulen immer wieder Includes sehe.
Danke
VG
CA
Re: PHP Includes in den Modulen erlauben
Verfasst: So 8. Dez 2013, 21:17
von xmurrix
Hallo contenidoAmateur,
in Modulen hast du die volle Funktionalität, die dir PHP bietet, auch includes. Da gibt es keine Einschränkung.
Wenn deine Dateien außerhalb der Installation liegen und du sie nicht einbinden kannst, kann das auch an der restriktiven PHP-Einstellung open_basedir liegen.
Auf jeden Fall sollte zumindest eine Warnung in der errorlog.txt dazu stehen, schau einfach in contenido/logs/ nach, warum das nicht klappt.
Gruß
xmurrix
Re: PHP Includes in den Modulen erlauben
Verfasst: Mo 9. Dez 2013, 13:50
von contenidoAmateur
Danke für den Tipp.
Also dort steht etwas das der Pfad nicht richtig ist und ich anscheinend den Serverpfad nutzen soll.
.:/opt/RZphp5/includes - das ist der Includepfad (verstehe ich nicht...)
Also ich habe root/bauteile/ dort liegen Navi etc drinne nun habe ich root/test/ dort liegt die installation drinne wie lautet nun der richtige Pfad? ich steig da nicht durch
Würde mich über Hilfe freuen
Danke
PS: Könnte ich nicht theortisch in der front_content.php von Contenido das HTML Gerüst bauen was ich überall gleich haben will so dass die Installation nur "Macht" über den Content hat?
Re: PHP Includes in den Modulen erlauben
Verfasst: Mo 9. Dez 2013, 23:11
von xmurrix
Hallo contenidoAmateur,
schau nach, was in der Einstellung "open_basedir" und in "safe_mode_include_dir" steht, näheres dazu findest du unter folgenden URLs
http://php.net/manual/de/ini.sect.safe- ... nclude-dir
http://www.php.net/manual/de/ini.core.p ... en-basedir
...Also ich habe root/bauteile/ dort liegen Navi etc drinne nun habe ich root/test/ dort liegt die installation drinne wie lautet nun der richtige Pfad?...
Was ist mit root gemeint, ist das der DocumentRoot, also das Root-Verzeichnis der Domain, des Virtual-Hosts?
Wenn deine include-Dateien innerhalb der CONTENIDO-Installation liegen, kannst du auch mit dem vollen Pfad arbeiten, verwende dafür z. B. die Variable $cfg['path']['frontend']
Code: Alles auswählen
# CONTENIDO ist unter /var/www/ installiert
# Die includes liegen in /var/www/bauteile/
include_once($cfg['path']['frontend'] . '/bauteile/mein_bauteil.php');
...Könnte ich nicht theortisch in der front_content.php von Contenido das HTML Gerüst bauen was ich überall gleich haben will so dass die Installation nur "Macht" über den Content hat?..
Warum verwendest du nicht das Layout, um das HTML-Grundgerüst zu bauen? Dafür ist doch das Layout da. Du kannst auch im Layout PHP-Code einbauen, oder auch PHP-Includes...
Gruß
xmurrix
Re: PHP Includes in den Modulen erlauben
Verfasst: Do 19. Dez 2013, 19:46
von contenidoAmateur
Hi,
Danke für deine Antwort. Ich hatte selbst ein wenig geschaut und es funktioniert nun einwandfrei
VG
CA