php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 14.03.2008, 19:39  
Erfahrener Benutzer
 
Registriert seit: 04.12.2005
Beiträge: 286
PHP-Kenntnisse:
Fortgeschritten
snatch-ic
Standard Config Datei oder Datenbank

Hallo,
ich schlage mich gerade mit einer config Datei rum die ich über ein Formular ändern will. Momentan weis ich noch nicht so genau wie ich das machen soll. Das Problem stellt sich da mir in der Form das ich nicht genau weis wie ich an das Problem ran gehen soll.
Dann kam mir der Gedanke das ich ja eine Tabelle in der Datenbank erstellen könnte die von mir aus "options" heißt und anstatt der config Datei die ich jetzt habe die ganzen Einstellungen enthält. Das würde mir das ganze um einiges leichter machen, nur ist die Idee auch so gut?
Was haltet ihr davon?

gruß, snatch
snatch-ic ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 14.03.2008, 20:47  
¯\_(ツ)_/¯
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.814
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Kann man durchaus so machen! Diverse andere Skripte (z.B. phpbb) machen dies genauso!
__________________
▇█▓▒░◕‿‿◕░▒▓█▇
Flor1an ist offline  
Alt 14.03.2008, 21:19  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.798
PHP-Kenntnisse:
Fortgeschritten
robo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblick
Standard

wofür ist die config denn ? und wie oft muss sie geändert werden ? und was steht alles drin ? sowas bringt halt nichts wenn dadrin die zugangsdaten zur datenbank stehen
robo47 ist offline  
Alt 15.03.2008, 08:50  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Zwecks Konfiguration benutz ich SimpleXML, kannst du relativ leicht drauf zugreifen:
PHP-Code:
<?php
$config 
simplexml_load_file("config.xml");
if (
$config->option == "tu das oder das") {
  
tu_das_oder_das();
}
?>
Dazu muss das XML eigentlich nur so aufgebaut sein:
Code:
<?xml version="1.0">
<root>
  <option>tu das oder das</option>
</root>
Ich mag diesen Stil ganz gerne. Auf was genau willst du denn heraus?
Zergling-new ist offline  
Alt 15.03.2008, 14:35  
Erfahrener Benutzer
 
Registriert seit: 16.07.2005
Beiträge: 1.007
PHP-Kenntnisse:
Fortgeschritten
brian johnson befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Zergling
Zwecks Konfiguration benutz ich SimpleXML, kannst du relativ leicht drauf zugreifen:
PHP-Code:
<?php
$config 
simplexml_load_file("config.xml");
if (
$config->option == "tu das oder das") {
  
tu_das_oder_das();
}
?>
Dazu muss das XML eigentlich nur so aufgebaut sein:
Code:
<?xml version="1.0">
<root>
  <option>tu das oder das</option>
</root>
so mach ich das auch, find ich au nit schlecht....
Ich mag diesen Stil ganz gerne. Auf was genau willst du denn heraus?
__________________
PHP4?!?>>>Aktuelle PHP Version: 5.2.11 || 5.3.0
Suse 11.2 *vorfreude*
brian johnson ist offline  
Alt 15.03.2008, 18:33  
Erfahrener Benutzer
 
Registriert seit: 04.12.2005
Beiträge: 286
PHP-Kenntnisse:
Fortgeschritten
snatch-ic
Standard

Zitat:
Zitat von robo47
wofür ist die config denn ? und wie oft muss sie geändert werden ? und was steht alles drin ? sowas bringt halt nichts wenn dadrin die zugangsdaten zur datenbank stehen
Schon klar das die Datenbankvariante nichts bringen würde wenn in ihr die Zugangsdaten zur DB stehen würden. Aber das wäre ja auch nicht das Problem, die Zugangsdaten könnte ich ja auch in eine Datei schreiben.

Also der Sinn dieser Daten soll halt der einer klassischen Konfiguration sein. Z.B. die Zugnagsdaten für die Datenbank usw.
Einfach alles was irgendwo für die Website festgehalten werden muss. An XML habe ich dabei noch gar nicht so oft gedacht. Das einzige was mir da als Problem erscheint ist das eine Datei die auf .xml endet im Browser ohne Probleme ausgelesen werden kann.
Oder macht das ganze keinen Unterschied wenn ich die Endung der XML Datei einfach auf .php ändere?

Was für eine Lösung würdet ihr denn dann bevorzugen?
snatch-ic ist offline  
Alt 15.03.2008, 18:42  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.425
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Es macht einen Unterschied und zwar den, dass der PHP-Parser dann die XML-Datei als PHP-Datei ansieht.
Entweder der Server ist so konfiguriert, dass er nur <?php-Tags annimmt oder es kommt zu Problemen mit der XML-Deklaration. Beides hat große Nachteile: beim ersten ist die Datei nach wie vor auslesbar und beim zweiten ist sie gar nicht mehr lesbar, da nur eine Fehlermeldung ausgegeben wird.

Ich mache das immer so, dass ich DB-Zugansdaten in Konstanten speichere, die ich in einer configs.inc.php speichere. Alles andere schreibe ich fast ausnahmslos in die DB (außer wenn es sich mal nicht unbedingt anbietet).

Edit:
@Zergling: Ja, das wäre auch eine Möglichkeit, aber für meine Begriffe etwas umständlich. Vor allem, wenn es sich auch noch eine Anwendung handelt, die vielleicht noch woanders laufen soll.
Manko10 ist offline  
Alt 15.03.2008, 18:42  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Die config.xml sollte nicht übers Web erreichbar sein, also entweder irgendwo außerhalb des DocumentRoot ablegen. Mit PHP kannst du dann weiterhin wunderbar drauf zugreifen.
Zergling-new ist offline  
Alt 16.03.2008, 03:03  
Erfahrener Benutzer
 
Registriert seit: 04.12.2005
Beiträge: 286
PHP-Kenntnisse:
Fortgeschritten
snatch-ic
Standard

Klar, das ist möglich wenn ein Root-Server verfügbar ist.
Bei einem Hostingpackt wird das ganze aber schon schwieriger. Deswegen denke ich das eine Tabelle in der die Daten stehen sicherer wären. Ich würde zwar lieber eine XML Datei nutzen weil mir das saubrer rüberkommt, aber das wäre dann wohl die unsicherere Variante, oder?
snatch-ic ist offline  
Alt 16.03.2008, 06:04  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.798
PHP-Kenntnisse:
Fortgeschritten
robo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblickrobo47 ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von snatch-ic
Klar, das ist möglich wenn ein Root-Server verfügbar ist.
Bei einem Hostingpackt wird das ganze aber schon schwieriger. Deswegen denke ich das eine Tabelle in der die Daten stehen sicherer wären. Ich würde zwar lieber eine XML Datei nutzen weil mir das saubrer rüberkommt, aber das wäre dann wohl die unsicherere Variante, oder?
Alles eine Sache ob der Hoster seine Verzeichnisstruktur auch etwas "durchdacht" hat oder nicht, ausserdem hilft immernoch fragen, viele Hoster gehen auch mal auf Wünsche ihrer Kunden ein, desweiteren gibt es immernoch die Methode ein Verzeichnis anzulegen, dort eine .htaccess mit folgendem Inhalt rein:

Code:
DENY FROM ALL
und in dieses Verzeichnis die Configs unterzubringen, damit kommt kein User von aussen an Dateien in dem Verzeichnis, aber via PHP, wo du über das Dateisystem und nicht über den Webserver zugreifst, ist ein Zugriff ohne Probleme möglich.

Das ganze funktioniert natürlich nur bei einem Apache-Webserver, der dürfte allerdings im Standard-Webhosting wohl über 95% ausmachen.
robo47 ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
SQL Datei mit PHP importieren?! Nightuser PHP Tipps 2008 13 01.02.2009 01:51
[Erledigt] Hochgeladene Datei wird doppelt abgelegt thecracked PHP Tipps 2008 3 01.07.2008 16:31
Datei per Buttonklick runterladen... go1denboy PHP Tipps 2008 7 14.06.2008 20:25
CSV Datei in MySQL importieren phpler1609 PHP Tipps 2006 6 23.03.2006 14:48
.ht datei wie sicher? danysahne333 PHP Tipps 2006 28 06.03.2006 15:05
Tabelle aktualisieren aus csv datei Datenbanken 1 29.11.2005 17:56
[Erledigt] SQL Datei per PHP in die Datenbank eintragen PHP Tipps 2005-2 3 06.10.2005 12:57
CSV Datei rückwärts auslesen Schubi PHP Tipps 2005-2 16 12.09.2005 19:34
Create Datei... Beitragsarchiv 2 17.12.2004 21:09
Dateien lesen und schreiben [mehr als: r,a,w]? PHP Tipps 2004 4 24.10.2004 18:53
Zeilenumbrüche & Neudatein mit PHP PHP Tipps 2004 5 21.10.2004 11:38
Datei mit php erzeugen Stümper PHP Tipps 2004 4 12.10.2004 12:51
php und ftp PHP Tipps 2004 4 07.10.2004 09:58
[Erledigt] datei editieren PHP Tipps 2004 1 10.09.2004 20:33
(ich schonwieder) Link seite automatisch imported_DJ Nuno PHP Tipps 2004 14 19.08.2004 17:42

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php config in datenbank oder in file, config-datei in datenbank, php config datei für datenbank, config date für php, php config datei datenbank, php config file in db, config datei datenbank, php datenbankverbindung aus config datei, was stehen alles drin in datenbanken

Alle Zeitangaben in WEZ +1. Es ist jetzt 10:44 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.