phpbar.de logo

Mailinglisten-Archive

[php] Fehlermeldung beim Schlissen eine BD.

[php] Fehlermeldung beim Schlissen eine BD.

Gloss Mathias php_(at)_phpcenter.de
Fri, 15 Mar 2002 08:12:34 +0100


Hiho,

> Von: 	Bernhard Schimanski[SMTP:bernhard.schimanski_(at)_nexgo.de]
>
> Hallo Liste,
> entschuldigt, dass ich vergessen habe die Verbindung zu schreiben, es
> sieht nämlich so:
> Quelltext von "config.inc.php";
> <?
> $server = "rechnername";
> $user	="username";
> $password="password";
> $db	"datenbankname";
> ?>
>
> > >  #mysql_close($db);  #<------------------ Fehler
>
du hast da auch noch einiges anderes Vergessen ....

mysql_close() benötigt nur ein Parameter, wenn du eine bestimmte Datenbank-
verbindung beenden möchtest.
Wenn du einen Parameter angibst, dann  ist das aber nicht der Datenbankname
(der bei dir in $db steht), sondern das Verbindungshandle ... argel ... wie
heisst
das eigentlich auf deutsch ? ;)
Irgendwie fehlt auch noch ein mysql_connect() ....

Für die Verbindung zur Datenbank nahm ich früher immer $dbh (database
handle)
und für Verbindungen zum Statement $sth (statementhandle).... ok heute
benutz
ich die etwas erweiterte db-Klasse der PHPlib ;)

Also mit deinen oben angegebenen Variablen sollte das dann so gehen:

$server = ....
$user = ....
$password = ....
$db = ....   (bei dir fehlt übrigens das =)

$dbh = mysql_connect($server, $user, $password);
if ( ! $dbh) { die ('keine Verbindung zur DB '.mysql_error($dbh) ); }
if ( ! mysql_use_db($db, $dbh) ) { die ('kann DB nicht auswählen
'.mysql_error($dbh)); }

$sql = 'select irgendwas from irgendwo';
$sth = mysql_query($sql);
if ( ! $sth ) { die ('SQL-Query ist fehlerhaft '.mysql_error($dbh)); }

while ( $erg = mysql_fetch_row($sth) )  {
   echo '====' . $erg['irgendwas'] . '====';
}

if ( ! mysql_close( $dbh) ) { die ('kann DB nicht schließen
'.mysql_error($dbh)); }



In diesem Beispiel sollten so ziemlich alle Fehler abgefangen sein, die auf-
treten können. Dabei wird auch gleich noch die Fehlermeldung der Datenbank
mit ausgegeben. Wenn trotzdem nichts rauskommt, liegts dran, daß $sql
keine Werte zurückliefert :)

Grüße, Mathias


php::bar PHP Wiki   -   Listenarchive