Mailinglisten-Archive |
Hallo, beim Aufruf der Funktion artikel_add wird die Funktion artikel_exists aufgerufen. Diese baut eine Verbindung zu einer Mysql-Datenbak auf. Die funktioniert problemlos. Die Verbindung zur Datenbank wird dann wieder getrennt. Später in der Funktion artikel_add soll erneut eine DB-Verbindung hergestellt werden. Dieser DB-Connect funktioniert aber nicht mehr (Stelle ist mnarkiert). Serialize($db) ergibt i:-4; Kann mir irgendjemand sagen wieso? Wo kann man denn die Bedeutung für die verschiedenen i nachlesen. Code: >>>>> $user = 'xxx'; $pass = 'xxx'; $host = '192.168.0.99'; $db_name = 'zeitschriftenverzeichnis'; require_once 'DB.php'; $dsn = "mysql://$user:$pass_(at)_$host/$db_name"; function artikel_exists($issn) { global $dsn; $db = DB::connect($dsn); if(DB::isError($db)){ die('Konnte Verbindung zur Datenbank nicht herstellen'); } $sql = "select Count(*) from zeitschriftenverzeichnis where issn=$issn"; $result = $db->query($sql); if( DB::isError($result)){ die( "Fehlerhafte Datenbankabfrage"); } $row=$result->fetchRow($result); $db->disconnect(); if( $row[0] > 0){ return true; } else{ return false; } } function artikel_add($abc_pos,$titel,$untertitel,$herausgeber,$ausgabeort,$issn,$sieh e_unter,$bemerkung1,$bemerkung2,$fruehere_spaetere_titel) { global $dsn; if(artikel_exists($issn)){ return false; } $db = DB::connect($dsn); /* ************************** HIER TRITT DER FEHLER AUF !!! ******************************* */ if(DB::isError($db)){ die('Konnte Verbindung zur Datenbank nicht herstellen'); } $sql = "insert into zeitschriftenverzeichnis values (abc_pos='$abc_pos',titel='$titel',untertitel='$untertitel',herausgeber='$he rausgeber',ausgabeort='$ausgabeort',issn='$issn', siehe_unter='$siehe_unter',bemerkung1='$bemerkung1',bemerkung2='$bemerkung2' ,fruehere_spaetere_titel='$fruehere_spaetere_titel')"; $result = $db->query($sql); if( DB::isError($result)){ die( "Fehlerhafte Datenbankabfrage"); } $db->disconnect(); return true; } mfg Martin Abraham
php::bar PHP Wiki - Listenarchive