php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 08.11.2011, 13:13  
Erfahrener Benutzer
 
Registriert seit: 28.06.2009
Beiträge: 109
PHP-Kenntnisse:
Fortgeschritten
eisenhans befindet sich auf einem aufstrebenden Ast
Standard Datenbankzugriff

Zitat:
Zitat von Obsidian Beitrag anzeigen
Da ich für jede Variable, die ich mit gettexts() aus der Datenbank aufrufe, eine DB verbindung aufbaue, wie sieht das bei einer Inhaltsreichen Seite mit der Performence aus?
Wäre es Sinnvoller (Performencetechnisch) das ganze etwas anders zu lösen?
Also mein Ansatz ist folgender:

Ich erstelle beim beim Aufbau der Seite ein Datenbankobjekt,
verbinde mich und greife im weiteren Verlauf in Funktionen über global auf dieses zu.

Am Ende wird das Datenbankobjekt wieder geschlossen.

Da gibt es sicher einige OOP-Experten, die die Hände über den Kopf zusammenschlagen, aber es funktioniert und ich kann jederzeit die Daten aus der Datenbank ziehen,die ich benötige.
__________________
Webstammtisch Oldenburg
eisenhans ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 08.11.2011, 13:23  
Erfahrener Benutzer
 
Registriert seit: 03.08.2010
Beiträge: 1.141
PHP-Kenntnisse:
Anfänger
hausl wird schon bald berühmt werdenhausl wird schon bald berühmt werden
Standard

By the way:

http://www.php.de/wiki-php/index.php...lls#SELECT_.2A

http://www.php.de/wiki-php/index.php...n_Doppelquotes

LG
__________________
Keine Zahl != ein Zeichen das keine Zahl ist
hausl ist offline   Mit Zitat antworten
Alt 08.11.2011, 15:59  
Benutzer
 
Registriert seit: 20.04.2011
Beiträge: 45
PHP-Kenntnisse:
Anfänger
Obsidian befindet sich auf einem aufstrebenden Ast
Standard

habs.. hat ein wenig gebraucht aber nu funktionierts und es lädt auch schonmal sehr viel schneller. Auch die Sprachumstellung verläzft viel schneller als zuvor

im index.php:
PHP-Code:
// wurde bereits ein wert zugewiesen? wenn nicht standardsprache..
if (!isset($_SESSION['language']))
    { 
$_SESSION['language']='de'; }
// in test.php steht mein dbh für den sprachsatz
include "test.php";
// in $clfu (class_functions.php) ist die gettexts() function
require_once ("$clfu"); 
test.php:
PHP-Code:
<?php
// mal nachschauen ob eine sprache per post gewählt wurde
    
if(isset($_POST['de']))
    { 
$_SESSION['language'] = 'de'; }
    if(isset(
$_POST['en']))
    { 
$_SESSION['language'] = 'en'; }
    if(isset(
$_POST['fr']))
    { 
$_SESSION['language'] = 'fr'; }
    if(isset(
$_POST['it']))
    { 
$_SESSION['language'] = 'it'; }
    if(isset(
$_POST['es']))
    { 
$_SESSION['language'] = 'es'; }

// bedingungen wann das dbh ausgeführt werden soll, logischerweise nur dann wenn noch kein oder ein falscher sprachsatz geladen ist, ansonst macht dieses script so ziemlich nix ;)
if ((!isset($_SESSION['t_language'])) || ($_SESSION['t_language'] != $_SESSION['language']))

/* als erstes setze ich die kontrollvariable $_SESSION['t_language'] auf die gewählte sprache / nun wäre obige bedingung nicht mehr erfüllt und bei erneutem aufruf Dieses scripts, wird das dbh ausgelassen, bis wieder eine neue sprache gewählt wurde.. */
$_SESSION['t_language'] = $_SESSION['language'];
$language $_SESSION['language'];

/**/
$dbhost "xxxx";
$dbuser "xxxx";
$dbpass "xxxx";
$database "xxxx";
$dbh mysql_connect($dbhost$dbuser$dbpass);
/**/

mysql_select_db($database$dbh);

$sql mysql_query("SELECT *
    FROM gl_texts
    WHERE t_language = '$language'"
$dbh)
    or die(
mysql_error());
    
while(
$row mysql_fetch_array($sql))
{
    
$t_key $row['t_key'];
    
$_SESSION['txts'][''.$t_key.''] = $row['t_content'];
}

mysql_close($dbh);

}

?>
die function gettexts():
PHP-Code:
function gettexts($id)
{
    
$gettexts $_SESSION['txts'][''.$id.''];
    return 
$gettexts;

und immernoch wie gehabt:

Code:
<form method=\"post\" action=\"\">
<input type=\"submit\" value=\"DE\" name=\"de\" />
<input type=\"submit\" value=\"EN\" name=\"en\" />
<input type=\"submit\" value=\"FR\" name=\"fr\" />
<input type=\"submit\" value=\"IT\" name=\"it\" />
<input type=\"submit\" value=\"ES\" name=\"es\" />
</form>
und das wärs dann.. wenn noch jemand dringenden verbesserungsbedarf sieht.. für jeden input dankbar!
Obsidian ist offline   Mit Zitat antworten
Alt 08.11.2011, 16:34  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Ich würde File-Caching statt Sessions verwenden. Dann brauchst Du das nur auslesen, wenn sich mal die DB ändert.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 08.11.2011, 19:42  
Benutzer
 
Registriert seit: 20.04.2011
Beiträge: 45
PHP-Kenntnisse:
Anfänger
Obsidian befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
Ich würde File-Caching statt Sessions verwenden. Dann brauchst Du das nur auslesen, wenn sich mal die DB ändert.
werd ich mir mal anschauen, danke
Obsidian 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
Mehrsprachigkeit mit Hilfe von Files Geryon Software-Design 36 07.06.2011 17:18
Mehrsprachigkeit - gettext() agrajag Off-Topic Diskussionen 5 24.02.2008 22:49
Frage zu Typen und Performence notyyy PHP-Fortgeschrittene 13 14.11.2007 02:18
Mehrsprachigkeit und kyrillische Zeichen Sclot PHP Tipps 2006 8 15.11.2006 08:07
Sprachfiles / Mehrsprachigkeit ... Wie macht Ihr das? heohni PHP-Fortgeschrittene 17 30.05.2006 23:58
Performence Seitenzugriffe PHP Tipps 2005-2 3 29.10.2005 15:57
Mehrsprachigkeit innerhalb einer Datenbank Datenbanken 4 14.09.2005 17:01
Performence Frage PHP-Fortgeschrittene 10 06.05.2005 19:00
[Erledigt] Mal wieder mod_rewrite in .htaccess ;-) / Mehrsprachigkeit Server, Hosting und Workstations 3 07.09.2004 17:27


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:21 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