[GastForen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Forenindex -- Lesezeichen

2 Lesezeichen für php

|||| Mit PHP per include verschiedene Dateien einbinden
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.
...
oesi50
9. Jul 2007, 17:46
Diskussion: Sicherheit von Passwortabfragen
>> wenn ich das richtig verstehe, gibt es dort eine vorgegebene MySQL Datenbank,
>> in der alle User für den gesamten Server drin stehen.
>> Außerdem habe ich keine Möglichkeit weitere Informationen mit zu speichern, oder?

Du kannst alles frei definieren, es ist da nichts festgelegt.
Und Du kannst in der Tabelle mit den Benutzernamen und Paßwörtern
auch noch weitere Informationen speichern.


>> Letztendlich muss man dann auch in der Lage sein, das Modul zu installieren.

Am besten den Provider fragen, ohne root-Zugang läßt sich das Modul leider nicht installieren.
Besonders bei sehr vielen Benutzern ist es sehr angenehm für die Performance.


>> Wie sicher schätzt du denn von mir beschriebenen Weg ein den über .htaccess
>> eingeloggten Benutzer abzufragen und anhand des Benutzernamens
>> die weiteren Infos aus eine Datenbank zu holen?

Vom Browser zum Webserver wird der Benutzername und das Paßwort nur base64 codiert.
Innerhalb dieser Übertragung besteht die größte Unsicherheit, deshalb sollte man hier ein SSL-Zertifikat verwenden.
...
SabineP
4. Mai 2007, 15:43

Aktuell

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.

Veranstaltungen
21.08.2019

Affinity Photo, Affinity Designer und Affinity Publisher

Schulungsraum von pre2media – Dammstrasse 8, 8610 Uster
Mittwoch, 21. Aug. 2019, 09.00 - 17.00 Uhr

Referat

Alle reden davon – wir zeigen ihnen kompakt was in den einzelnen ­Programmen wirklich steckt. Sind die Programme von Affinity – bereits heute – eine Alternative zu den Adobe-Programmen? Was versteht ­Affinity unter StudioLink und der vollständigen Integration der Affinity-Apps. Sie können jedes Affinity-Referat einzeln buchen. Oder alle drei Referate zusammen, bequem an einem Tag.

Mittwoch, 21. August 2019
9.00 bis 11.00 Affinity Photo Bildbearbeitung CHF 90.00
13.00 bis 15.00 Affinity Designer Grafikdesign CHF 90.00
15.00 bis 17.00 Affinity Publisher Layoutprogramm CHF 90.00
Alle drei Affinity Programme zusammen (6 Lektionen) CHF 220.00

Diese Referate werden auch noch am Fr. 13. September und am Di. 22. Oktober 2019 durchgeführt.

Ja

Organisator: pre2media gmbh, Dammstrasse 8, 8610 Uster, info@pre2media.ch, www.pre2media.ch

Kontaktinformation: Peter Jäger oder Roger Thurnherr, E-Mailinfo AT pre2media DOT ch

https://www.pre2media.ch/-1/de/kurse/affinity-referat/

Affinity-Referat bei pre2media
Veranstaltungen
22.08.2019

Impressed GmbH, Hamburg
Donnerstag, 22. Aug. 2019, 10.00 - 10.30 Uhr

Webinar

Wir stellen Ihnen in diesem kostenlosen ca. halbstündigen Webinar das neue Enfocus Switch PDF Review Modul zur Freigabe von PDF-Druckdaten vor.

Ja

Organisator: Impressed GmbH

Kontaktinformation: Detlef Grimm, E-Mailschulungen AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=250

Enfocus Switch PDF Review Modul
Hier Klicken