- #1
L
Luca_
Aktives Mitglied
Themenersteller
- Dabei seit
- 22.03.2006
- Beiträge
- 36
- Reaktionspunkte
- 0
Hi
Ich habe ein kleines Script welches mir div. Datensätze aus einer MySQL DB liest.
Das funktioniert einwandfrei. Da ich aber seit geraumer Zeit mit der PEAR:B arbeite, wollte ich das ganze jetzt ersetzten, also die mysql-Abfragen in diesem Script.
funktioniert nicht, ich erhalte immer die folgende Fehlermeldung:
Fatal error: Call to a member function on a non-object in .../functions.inc.php on line 14
der PHP-Code
functions.inc.php :
Wo genau liegt der Fehler?
Ich haben schon probiert, den Teil wo er sich zur DB verbindet und die Klasse $db erstellt, in die Funktion einzubauen, jedoch ging das auch nicht:
Fatal error: Cannot redeclare class db in /usr/share/php/DB.php on line 271
Ich habe ein kleines Script welches mir div. Datensätze aus einer MySQL DB liest.
Das funktioniert einwandfrei. Da ich aber seit geraumer Zeit mit der PEAR:B arbeite, wollte ich das ganze jetzt ersetzten, also die mysql-Abfragen in diesem Script.
funktioniert nicht, ich erhalte immer die folgende Fehlermeldung:
Fatal error: Call to a member function on a non-object in .../functions.inc.php on line 14
der PHP-Code
Code:
<?php
require('DB.php');
$dsn = mysql://user:pw@localhost/db;
$db = DB::connect($dsn);
if(DB::isError($result)) {
die($result->getMessage());
}
include('functions.inc.php');
display_children('',0);
?>
Code:
<?php
function display_children($parent, $level) {
// retrieve all children of $parent
$sql = SELECT
title
FROM
gn_downloads
WHERE
parent='.$parent.';;
$result = $db->query($sql); // <--- Line 14
if(DB::isError($result)) {
die($result->getMessage());
}
$dls = array();
while($row = $result->fetchrow(DB_FETCHMODE_ASSOC)) {
$dls[] = $row;
}
// display each child
while ($dls) {
// indent and display the title of this child
echo str_repeat('&nbsp;&nbsp;',$level).$row['title'].<br>\n;
// call this function again to display this
// child's children
display_children($row['title'], $level+1);
}
$result->free();
$db->disconnect();
}
?>
Ich haben schon probiert, den Teil wo er sich zur DB verbindet und die Klasse $db erstellt, in die Funktion einzubauen, jedoch ging das auch nicht:
Fatal error: Cannot redeclare class db in /usr/share/php/DB.php on line 271