[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 hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
06.07.2020 - 07.07.2020

Digicomp Academy AG, Zürich oder virtuell
Montag, 06. Juli 2020, 08.30 Uhr - Dienstag, 07. Juli 2020, 17.00 Uhr

Kurs

Adobe Experience Design, kurz XD ist das neue Programm für UX/UI-Design. Mit XD lassen sich visuelles Design und klickbare Prototypen nahtlos verbinden. Lernen Sie die wichtigsten Funktionen vom Entwurf am Bildschirm bis zum online geteilten Prototypen.

Preis: CHF 1'400.-
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/web-publishing/adobe-xd-cc/kurs-adobe-xd-basic

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

Neuste Foreneinträge


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

ID CC 2019 und 2020: Crash beim Startvorgang

Sämtliche Programme der Adobe CC verlieren Farbeinstellungen

Ausgabevorschau lässt Acrobat abstürzen

Problem mit Script: Leere Bildrahmen im entfernen

Auflistung aller Verknüpfungen

Keine Berechtigung zum Senden von Apple-Events an SatimageOSAX

Word-Dokument nach QXP importieren

Benutzerdefinierte Eigenschaft in Formularfeld schreiben

Font aktiv aber nicht in allen Dokumenten angezeigt
medienjobs