Datenbank global nutzen

TimN

Erfahrenes Mitglied
Hi,

ich hab mal ne Frage:

Wenn ich in meiner Datei am Anfang zu einer Datanbank verbinde
Code:
$verbindung = mysql_connect($database_host, $database_user, $database_pass);
$db_selected = mysql_select_db($database_databasename);

und dann später in einer Funktion die Datanbank verwenden will
Code:
function List() 
{
  mysql_query(....) or die(mysql_error());
  ...
}

geht das nicht. Ich bekomme immer den Fehler "no databse selected"


Wie kann ich jetzt auf die Datenbank zugreifen, ohne in jeder Funktion mysql_connet() und mysql_select aufzurufen?
 
Ich würde die Zeilen, in der Du zur DB verbindest/diese auswählst in eine externe Datei packen und per include() am in den Dateikopf einbinden. Somit steht dir die Datenbank für Abfragen innerhalb der Funktion zur Verfügung. Vorraussetzung dafür ist, dass die Funktion unterhalb des includes() steht.
 
Versuche mal, die Verbindungskennung bei dem mysql_query() anzugeben. Vieleicht geht es ja. Du musst der Funktion die Verbindungskennung entweder mitgeben, oder diese auf Global setzen, da sie sonst in der Funktion nicht gekannt ist.

MFG
redX
 
ich empfehle dir auch die Variante mit dem Include() mach ich bei mir auch immer.
ich verbinde im Hauptfile und include die Abfragen
 
Moritz123 hat gesagt.:
Somit steht dir die Datenbank für Abfragen innerhalb der Funktion zur Verfügung. Vorraussetzung dafür ist, dass die Funktion unterhalb des includes() steht.
Das ist nur bedingt richtig. Entscheidend ist, wo die Funktion aufgerufen, nicht wo sie deklariert wird.
 
Zurück