[GastForen Programmierung/Entwicklung PHP und MySQL Mit PHP per include verschiedene Dateien einbinden

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Mit PHP per include verschiedene Dateien einbinden

oesi50
  
Beiträge gesamt: 2315

9. Jul 2007, 17:46
Beitrag # 1 von 3
Bewertung: ||||
(41665 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Aus gegebenem Anlass möchte ich hier mal darlegen, wie man unterschiedliche Dateien mit include einbindet, und dabei einen sicheren und vor allem wartbaren Code erhält.

Der Ausgangspunkt ist dieser Aufruf:

http://www.example.com/meine_datei.php?action=start


Code
# der folgende Bereich ist als Konfiguration zu verstehen 
# und sollte ganz am Anfang des Scriptes stehen
#
# Kann aber auch ausgelagert und für weitere Scripte benutzt werden.
#

$action_default = "start"; # das ist die Standardaktion

# in diesem Array werden alle zulässigen Aktionen hinterlegt
$actions = Array(
"start" => "datei0.php",
"aktion1" => "datei1.php",
"aktion2" => "datei2.php",
"aktion3" => "datei3.php",
"aktion4" => "datei4.php",
"aktion5" => "datei5.php",
"aktion6" => "datei6.php",
# ... usw.
);


### Ende der Konfiguration

#


# hier wird nun die passende Aktion ausgewählt
$action_file = $action_default;
if(isset($_GET['action'])){
$action_file = $actions[$_GET['action']] ? $actions[$_GET['action']] : $action_file;
}

# jetzt wird geprüft, ob die entsprechnde Datei überhaupt existiert
$filename = $_SERVER['DOCUMENT_ROOT'] . $action_file;

if (!file_exists($filename)) {
print "Schwerer Programmfehler: Aktion ist nicht vorhanden!";
exit;
}

# an dieser Stelle wird die jeweilige Datei eingebunden
# das ist die einzige Stelle mit include

include ("$filename");

# nun folgt das restliche Script


Wie man sieht, besteht der Code aus 2 Teilen: einer Konfiguration und dem eigentlichen Code. Damit ist es deutlich leichter möglich, spätere Erweiterungen anzubringen oder evtl. weitere Sicherheitsprüfungen.


Grüße Oesi
Ich weiß, dass ich nicht weiß... (Sokrates)

(Dieser Beitrag wurde von oesi50 am 9. Jul 2007, 17:48 geändert)
X

Mit PHP per include verschiedene Dateien einbinden

A.Min
Beiträge gesamt: 8

4. Okt 2009, 13:58
Beitrag # 2 von 3
Beitrag ID: #410125
Bewertung:
(37197 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Wäre es nicht einfacher statt "include" ein "require" zu verwenden?

Auszug aus http://de.php.net/...function.require.php:

require() is identical to include() except upon failure it will produce a fatal E_ERROR level error. In other words, it will halt the script whereas include() only emits a warning (E_WARNING) which allows the script to continue.

Übrigens ist bei rekursiven Include-Dateien (also Include-Dateien, die wiederum andere Include-Dateien includen), die Verwendung von require_once() bzw. include_once() sehr hilfreich.


als Antwort auf: [#301654]

Mit PHP per include verschiedene Dateien einbinden

markustinner
Beiträge gesamt: 71

30. Dez 2009, 10:01
Beitrag # 3 von 3
Beitrag ID: #428836
Bewertung:
(36609 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hm, ich versuche per include eine Wordpress-Seite in eine normale Seite (design.php) einzubinden. "allow_include_url" ist vom Provider gesperrt. Ich würde die Datei gerne lokal einbinden, aber Wordpress holt sich die Datei. von der Datenbank und somit habe ich nur einen Permalink zur Seite. Include mit lokalen Dateien kein Problem...

Beispiel:
http://www.xxxx.com/wordpress/?page_id=1
Include:
<?php
define('INCLUDE_PATH','/home/www/user/html/');
/* [..] */
include(INCLUDE_PATH.'wordpress/?page_id=1');
?>
Auch hier komme ich nicht zum Ziel, da die Datei im "wordpress" Ordner gar nicht vorhanden ist...

Fehlermeldungen:
Warning: include(/home/www/user/html/wordpress/?page_id=1) [function.include]: failed to open stream: No such file or directory in /home/www/user/html/design.php on line 42

Warning: include() [function.include]: Failed opening '/home/www/user/html/wordpress/?page_id=1' for inclusion (include_path='.') in /home/www/user/html/design.php on line 42

Wäre schön, wenn ich irgendwie weiter käme, denn mit Php5.2 geht es halt nicht mehr und ich will keinen iFrame benutzen...

Danke


als Antwort auf: [#410125]

Aktuell

InDesign / Illustrator
04_ai_Polygon_Logo_300x300

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
08.07.2020 - 09.07.2020

Digicomp Academy AG, Basel, Bern oder virtuell
Mittwoch, 08. Juli 2020, 08.30 Uhr - Donnerstag, 09. Juli 2020, 17.00 Uhr

Kurs

Mit After Effects können Sie visuelle Effekte und Animationen für Video, Web, DVD und Blu-Ray erzeugen. In diesem Kurs lernen Sie die Grundlagen kennen und sehen inspirierende Anwendungsbeispiele, die Ihnen helfen, Ihre eigenen Ideen umzusetzen.

Preis: CHF 1'700.-
Dauer: 2 Tage

Nein

Organisator: Digicomp Academy AG

Kontaktinformation: Isil Günalp, E-Mailisil.guenalp AT digicomp DOT ch

https://www.digicomp.ch/weiterbildung/software-anwendungs-trainings/adobe-trainings/video-und-audio-publishing/adobe-after-effects-cc/kurs-adobe-after-effects-basic

Veranstaltungen
14.08.2020 - 18.09.2020

Digicomp Academy AG, Zürich oder virtuell
Freitag, 14. Aug. 2020, 13.00 Uhr - Freitag, 18. Sept. 2020, 15.00 Uhr

Lehrgang

Im berufsbegleitenden Web Publisher Lehrgang vertiefen Sie Ihr Wissen rund um das Thema Screendesign und die Umsetzung von Websites. Wir befähigen Sie dazu selbständig und professionell Ihren Webauftritt zu planen und in die Realität umzusetzen. Erlangen Sie das Digicomp-Zertifikat zum Web Publisher. Mit dem Zertifikat bestätigen Sie Ihre Praxiserfahrungen und Qualifizierung in den genannten Themengebieten gegenüber Ihrem Arbeitgeber sowie Ihren Kunden.

Preis: CHF 3'250.-
Dauer: 8.5 Tage (ca. 56 Lektionen) – Unterricht findet jeweils am Freitag von 13 - 19 Uhr und Samstag von 09 - 17 Uhr statt

Nein

Organisator: Digicomp Academy AG

Kontaktinformation: Isil Günalp, E-Mailisil.guenalp AT digicomp DOT ch

https://www.digicomp.ch/zertifizierung/software-anwendungs-zertifikate/publishing-zertifizierung/lehrgang-web-publisher

Neuste Foreneinträge


Frage aus der Praxix: Scriptbibliotheken

Problem mit Script: Leere Bildrahmen im entfernen

QuarkXPress in InDesign

S�mtliche Programme der Adobe CC verlieren Farbeinstellungen

ID CC 2019 und 2020: Crash beim Startvorgang

Tabelle Zeile einf�gen, Zellformat anwenden, Tabelle in neuen Textrahmen, Objektformat zuweisen

Ausgabevorschau l�sst Acrobat abst�rzen

Auflistung aller Verkn�pfungen

Keine Berechtigung zum Senden von Apple-Events an SatimageOSAX

Word-Dokument nach QXP importieren
medienjobs