23. marts 2006 - 12:41Der er
7 kommentarer og 1 løsning
en mysql close function
Hej.
Jeg har lavet en function der connecter til min DB, sådan så jeg bare behøver at køre den function hver gang jeg skal connecte. Og på grund af det, kan jeg ikke lave en mysql_close($db) i slutningen af den funktion. Så derfor har jeg (prøvet at) lave en funktion der skal lave en mysql_close($HVADDENHEDFØR) men det virker ikke. Den siger bare: mysql_close(): supplied argument is not a valid MySQL-Link resource in
sourcen er her:
// Forbinder til databasen function dbconnect($midler){ $midler = "$".$midler; #echo $midler; // inkludere filen med database oplysningerne include 'config.php';
// forbindelsen oprettes $midler = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass); if(!$midler) die("Kunne ikke forbinde til databasen. " . mysql_error()); mysql_select_db($this->dbName);
#mysql_close($midler); }
// skal lukke for forbindelsen function dbclose(){ mysql_close($midler) OR DIE (mysql_error()); }
vil den stadig ikke. Er der nogen der kan forklare dette og måske fortælle hvordan jeg kan fikse det. Hvis det ikke kan lade sig gøre, så må jeg ho bare lave det sådan at der skal være en connect og close i hver eneste function der skal bruge databasen.
Så skal det være sådan noget som: function dbconnect($midler){ $midler = "$".$midler; #echo $midler; // inkludere filen med database oplysningerne include 'config.php';
// forbindelsen oprettes $midler = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass); if(!$midler) die("Kunne ikke forbinde til databasen. " . mysql_error()); mysql_select_db($this->dbName);
return($midler) #mysql_close($midler); }
// skal lukke for forbindelsen function dbclose($midler){ $bla = "$".$midler; mysql_close($db) OR DIE (mysql_error()); } $midler = dbconnect(); brug $midler... dbclose($midler);
Problemet er at på den måde er $hmm kun kendt inden for futionen dbconnect. Når denne funktion afsluttes slettes alle de variabler der er lavet inden for den. Derfor skal du bruge return($hmm) for at få $hmm ud af funktionen, og du skal også kalde dbclose() med $hmm: dbclose($hmm).
// skal lukke for forbindelsen function dbclose($dbconnect){ mysql_close($dbconnect) OR DIE (mysql_error()); } } ?>
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.