php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 15.03.2008, 12:22  
Neuer Benutzer
 
Registriert seit: 15.05.2008
Beiträge: 19
freehawk befindet sich auf einem aufstrebenden Ast
Standard Variablen in Datenbank speichern und auslesen

Hallo zusammen,

ich will meine grundlegenden Parameter für meine Internetseite in einer Datenbank abspeichern um einfach neu Parameter hinzufügen zu können.

Ich habe mir eine Tabelle mit zwei Spalten angelegt, einen für den Parameternamen und einen für den Wert des Parameters.

Das Reinschreiben usw ist kein Problem.

Bisher habe ich die Parameter alle in einer Datei stehen und include einfach die Datei. Dadurch werden die Parameter/Variablen als global gespeichert. Unter anderem sind unter den Parameter auch ein paar Arrays für den Seitentitel und sonst noch ein paar Sachen.

Ich habe jetzt Versuche gemacht mit Datenbank auslesen und dann die Werte an den Array $GLOABALS[] angehängt.

Das hat mit den normalen Variablen gut funktionert nur mit den Arrays hab ich Probleme.

PHP-Code:
function read_parameter $sql_host $sql_user $sql_pwd $sql_database )
    {
        
// SQL Verbindung aufbauen
        
$db_handling mysql_connect $sql_host $sql_user $sql_pwd );
        
// Datenbank waehlen
        
mysql_select_db $sql_database );
        
// SQL Abfrage stellen
        
$query "SELECT name,wert FROM parameter WHERE aktiv='TRUE'";
        
$result mysql_query $query );
        
// Abfrage auswerten
        
for ( $row 0$row mysql_num_rows $result ); $row++ )
        {
            
// Name und Wert in eine Variable schreiben
            
$name string_replace mysql_result $result $row ) , "read" );
            
$wert string_replace mysql_result $result $row ) , "read" );
            
// Globale Variable definieren
            
$GLOBALS$name ] = $wert;
        }
        
// Mysql Verbindung beenden
        
mysql_close $db_handling );
    } 
Das ist der Code von meinem Versuch. Die normalen Variablen gehen nur die Arrays nicht. Hat jemand einen Tipp für mich wie ich das auch noch hinbekomme?

Gruß
Markus
freehawk ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 15.03.2008, 13:16  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.633
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo freehawk,

zunächst ein Herzliches Willkommen im phpfriend.de-Forum!

Grundsätzlich kannst du keine Arrays direkt in einer Datenbank speichern. Hierzu musst du diese serialisieren und anschließend beim auslesen wieder deserialisieren.

Für meinen Geschmack ist es aber nicht wirklich sinnvoll, die Konfiguration als globale Variablen zu publizieren. Eine derartige Funktion sollte man tunlichst in eine Funktion kapseln, die einem die nötigen Konfigurationswerte für einen gegebenen Key zurückliefert. Im einfachsten Fall sind das zwei Funktionen mit dem Namen get_config_value($Key) und get_config_array($Key). Möchtest du das hübscher gestalten, implementierst du dir einen configurationManager (Klasse), der die bereits geladenen Konfigurationen cached und nur einmal im kompletten Code instanziiert wird (Singleton). So garantierst du, dass die Performance der Applikation nicht in den Keller geht, weil z.B. in einem Formular zig Werte für die sprachabhängige Beschriftung geladen werden.
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline   Mit Zitat antworten
Alt 15.03.2008, 13:39  
Neuer Benutzer
 
Registriert seit: 15.05.2008
Beiträge: 19
freehawk befindet sich auf einem aufstrebenden Ast
Standard

Hallo dr.e.

danke für die Antwort.

Ich wollte eigentlich nur einmal auf die Datenbank zugreifen um die ganzen Variablen auszulesen. Die beiden Methoden zum Auslesen der jeweiligen Variable ist natürlich auch eine Möglichkeit nur muss ich dann jede einzeln Abfragen, was ich eigentlich nicht wollte, da ich meine, man kann mich gerne verbesseren, dass daurch die Performance zurück geht.

Hast du ein Beispiel für so einen configurationManager? Ich will mir das mal anschauen.

Gruß
Markus
freehawk ist offline   Mit Zitat antworten
Alt 15.03.2008, 20:16  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.633
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo freehawk,

ob du nun einmal alle ausliest und dabei einige lädst, die du u.U. nicht brauchst, oder jeden einzeln und anschließend cachest ist IMHO egal. Letzteres ist nur ein wenig eleganter.

Das Adventure PHP Framework enthält eine Implementierung eines configurationManagers. Eine API-Bescheibung kannst du dir unter http://www.adventure-php-framework.o...n_manager.html ansehen, den Source-Code findest du unter http://www.adventure-php-framework.o...-php4_php5.zip. Solltest du Fragen haben, dann her damit!

Grundsätzlich kann man die Komponente in einer Klasse, die von coreObject erbt, wie folgt nutzen:
PHP-Code:
$Config = &$this->__getConfiguration('<NAMESPACE>,'<CONFIGNAME>');
echo $Config->getValue('
<SECTION>','<KEY>)); 
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline   Mit Zitat antworten
Alt 16.03.2008, 17:22  
Neuer Benutzer
 
Registriert seit: 15.05.2008
Beiträge: 19
freehawk befindet sich auf einem aufstrebenden Ast
Standard

Hallo,

ich habe mir mal das mit dem configurationManager angeschaut. Das ist mir für meine paar Variablen zu aufwendig.

Ich habe mich für das einzelne Auslesen der Variablen entschieden.

Du hast da was mit Cachen geschrieben. Wie würdest du das machen?

Gruß
Markus
freehawk ist offline   Mit Zitat antworten
Antwort


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
[Erledigt] Datenbank und Ordner auslesen funzt net borsty PHP Tipps 2008 6 03.06.2008 13:56
Mit php dynamisch Namen von Bildnamen sowie Pfad in mysql Datenbank speichern mallmis PHP Tipps 2008 1 19.11.2007 23:04
Inhalte in Datenbank speichern Maxi Datenbanken 31 14.09.2007 18:56
Datenbank auslesen, in Formular darstellen und �ndern PHP Tipps 2006 8 22.02.2006 17:51
Daten aus Datenbank sinnvoll speichern PHP Tipps 2006 15 02.02.2006 19:54
Arraywerte auslesen und in Datenbank geben? c-bass PHP Tipps 2005-2 30 10.08.2005 13:29
[Erledigt] Eingaben richtig in Datenbank speichern &amp;amp;amp; auslesen Datenbanken 7 05.08.2005 12:43
Mail Adresse aus einer Datenbank auslesen? Stemmi Datenbanken 6 23.04.2005 23:24
Auslesen aus der Datenbank nixdorf PHP Tipps 2005 7 06.02.2005 21:40
Variablen übergeben bzw. auslesen? PHP Tipps 2005 4 30.01.2005 03:56
eMail Attachment auslesen und auf Server speichern? becks123 PHP Tipps 2004-2 1 14.12.2004 11:54
auslesen aus datenbank und sortieren! PHP Tipps 2004-2 15 04.12.2004 15:56
Auslesen von Daten aus einer mysql Datenbank + Editieren vampsoftchef PHP Tipps 2004-2 5 15.11.2004 08:31
[Erledigt] meta refresh beim auslesen aus einer Datenbank umgehen Datenbanken 1 14.09.2004 20:10
Formular in Mysql Datenbank speichern Anuschka Datenbanken 1 15.08.2004 02:55

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php variable in datenbank speichern, variablen in datenbank speichern, variable in datenbank speichern, php variablen in datenbank speichern, php wert in datenbank speichern, variable aus datenbank auslesen, php variable in db speichern, daten aus datenbank in variable speichern, php variable in datenbank, variable in datenbank speichern php, http://www.php.de/php-fortgeschrittene/45653-variablen-datenbank-speichern-und-auslesen.html, datenbank in variable speichern, php variable aus datenbank auslesen, php variablen in datenbank, php daten aus datenbank in variable speichern, php variable datenbank speichern, php variablen speichern auslesen, wert aus datenbank in variable speichern, php wert in db speichern, php variable auf server speichern

Alle Zeitangaben in WEZ +1. Es ist jetzt 18:45 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.