SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Webseiten professionell erstellen

Webseiten professionell erstellen zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 05.06.2009, 17:08:21
Big-Gremlin Big-Gremlin ist offline
Anfänger
 
Registriert seit: Mar 2009
Alter: 37
Beiträge: 46
Frage zu Datenbankaufruf

ich hab mir noch nie darüber Gedanken gemacht, aber jetzt bastel ich meine Seite in Klassen um

bis jetzt habe ich immer meinen Datenbankaufruf in eine Variable gesteckt....also
Code:
$db_open = new PDO('mysql:host=localhost;dbname=' . $db_name, $db_user, $db_password);
beim Verwenden einer Datenbank wurde bis jetzt immer nur diese Variable aufgerufen....

jetzt habe ich alles in eine funktion gesteckt....

Code:
function db_open()
	{
	$db_user = '******';
	$db_password = '******';
	$db_name = '******';
	$db_open = new PDO('mysql:host=localhost;dbname=' . $db_name, $db_user, $db_password);
	return $db_open;
	}
und beim Verwenden der Datenbank wird nun die Funktion aufgerufen....

wenn ich jetzt aber mehrere Datenbankverwendungen auf einer Seite habe...wird demzufolge auch pro Aufruf die Funktion gestartet....also immer ein neues PDO-Objekt generiert....

meine Frage is jetzt....ist das überhaupt performant??? bei der Variable wird ja wie gesagt nur 1 Objekt generiert
Mit Zitat antworten
  #2  
Alt 11.06.2009, 14:53:18
Big-Gremlin Big-Gremlin ist offline
Anfänger
 
Registriert seit: Mar 2009
Alter: 37
Beiträge: 46
AW: Frage zu Datenbankaufruf

keener ne Antwort parat? :(
Mit Zitat antworten
  #3  
Alt 11.06.2009, 15:13:47
cortex cortex ist offline
SELFPHP Profi
 
Registriert seit: Apr 2008
Alter: 48
Beiträge: 1.938
AW: Frage zu Datenbankaufruf

Zitat:
Zitat von Big-Gremlin Beitrag anzeigen
wenn ich jetzt aber mehrere Datenbankverwendungen auf einer Seite habe...wird demzufolge auch pro Aufruf die Funktion gestartet....also immer ein neues PDO-Objekt generiert....
die frage hast du dir doch bereits selbst beantwortet... natürlich ist diese vorgehensweise weder performent, noch sinnvoll.

cx

Geändert von cortex (11.06.2009 um 15:14:02 Uhr)
Mit Zitat antworten
  #4  
Alt 11.06.2009, 21:34:01
Big-Gremlin Big-Gremlin ist offline
Anfänger
 
Registriert seit: Mar 2009
Alter: 37
Beiträge: 46
AW: Frage zu Datenbankaufruf

mhm...naja...ich wußte nicht wie stark sowas den server belastet.....ich versuche die datenbankaufrufe immer relativ gering zu halten....

aber ich machs jetz mit einer Variable ;) muss ich die halt globalisieren damit die in den funktionen funktioniert ;)

Geändert von Big-Gremlin (11.06.2009 um 21:34:32 Uhr)
Mit Zitat antworten
  #5  
Alt 11.06.2009, 22:15:01
DokuLeseHemmung DokuLeseHemmung ist offline
SELFPHP Experte
 
Registriert seit: Jun 2008
Alter: 15
Beiträge: 2.269
AW: Frage zu Datenbankaufruf

Zitat:
muss ich die halt globalisieren damit die in den funktionen funktioniert
Och nöööö....
Das mit dem global tut doch keine Not.

Was ist wenn du mal eine 2te Verbindung brauchst?
Was dann?
Alle Funktionen verdoppeln und umschreiben?

Geändert von DokuLeseHemmung (11.06.2009 um 22:15:28 Uhr)
Mit Zitat antworten
  #6  
Alt 13.06.2009, 03:41:35
Big-Gremlin Big-Gremlin ist offline
Anfänger
 
Registriert seit: Mar 2009
Alter: 37
Beiträge: 46
AW: Frage zu Datenbankaufruf

na wie will mans denn sonst machn???

ich hab das Datenbankobjekt in einer Variable......und die einzelnen queries (PDO mit prepared Statements) sind in den jeweiligen funktionen...

Code:
$sql_register = 'INSERT INTO user (USER_NAME, etc) VALUES (:user_name, etc)';
$kommando_register = db_open()->prepare($sql_register);

usw...
db_open is NOCH der funktionsaufruf....muss ich am Ende noch mit einer Variable ersetzen.....wenn ich die Variable aber in der Funktion verwenden will, muss ich sie nunmal globalisieren (ich wüßte zumindest keine andere Möglichkeit)

also jetz bin ich komplett verwirrt....wie gehts nun richtig? ;)
Mit Zitat antworten
  #7  
Alt 13.06.2009, 11:39:46
DokuLeseHemmung DokuLeseHemmung ist offline
SELFPHP Experte
 
Registriert seit: Jun 2008
Alter: 15
Beiträge: 2.269
AW: Frage zu Datenbankaufruf

Du kannst die Variable auch der Funktion als Parameter übergeben.
Mit Zitat antworten
  #8  
Alt 13.06.2009, 12:51:55
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
AW: Frage zu Datenbankaufruf

merke: funktionen dienen (u.a.) der wiederverwendung. hardkodierte variablennamen in funktionen behindern wiederverwendung.
Mit Zitat antworten
  #9  
Alt 13.06.2009, 16:57:36
Big-Gremlin Big-Gremlin ist offline
Anfänger
 
Registriert seit: Mar 2009
Alter: 37
Beiträge: 46
AW: Frage zu Datenbankaufruf

als Variablenübergabe wärs auch kein problem.... nur ob ich jetz die variable im funktionsaufruf veränder, oder in der Funktion selber..der Aufwand is irgendwie die selbe ;D

vielen Dank....jetz kann ich wenigstens weiter basteln ;)
Mit Zitat antworten
  #10  
Alt 13.06.2009, 19:14:18
Big-Gremlin Big-Gremlin ist offline
Anfänger
 
Registriert seit: Mar 2009
Alter: 37
Beiträge: 46
AW: Frage zu Datenbankaufruf

ABER MOMENT!!!!!

mir kommt gerade ein Gedanke.... und zwar...wenn ich die Variable übereb, würde doch in der Funktion selber ein neues Objekt generiert werden, welches nur die Eigenschaften der übergebenen Variable hat.

das wäre im Endeffekt GENAU das gleiche, wie als wenn ich es mit einer Funktionen löse..

wenn ich globalisier würde doch GENAU das Objekt, welches ich globalisier verwendet werden....somit wäre globalisieren performanter wenn ich mehrere datenbankaufrufe auf einer Seite hätte, da wie gesagt nur dieses eine Objekt bei sämtlichen Datenbankaufrufen verwendet wird

oder ist das jetzt ein Denkfehler von mir???
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Frage zur Verknüpfung v. Tabellen in SELECT und Datenbankstruktur mrweasel MySQLi/PDO/(MySQL) 8 05.05.2008 21:54:19
Frage bzw. Idee zum Captcha Thema pixelsetzer PHP Grundlagen 5 26.01.2008 23:53:44
ne kurze frage zu tabellen mit php inhalt ichduersiees PHP Grundlagen 3 18.06.2003 20:28:15
Frage mit is_dir bzw mit dem vergleich von Dateinamen Nonstop PHP Grundlagen 3 08.05.2003 07:38:54
dumme frage? high lee PHP für Fortgeschrittene und Experten 3 14.03.2002 19:25:25


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:23:21 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt