Ich weiß nicht ob ich Dein Problem richtig verstanden habe, aber ich hab da mal eine Funktion geschrieben, die Dir vielleicht weiterhilft…
Aufgerufen wird Sie z. B. so:
<?php $erg = gf_runsql("SELECT name, vorname FROM adressen");<br />
if($erg["COUNT"]\>0) {
while($info=mysql\_fetch\_array($erg["RESULT"])) {
echo $info["name"]." ".$info["vorname"]."
";
}
}
else {
echo "Keine Daten zum Anzeigen!
";
}
?\>
<?php function gf_runsql($sql)<br />{
# Funktion "gf\_runsql()"
#
# Voraussetzungen:
# Die Variablen $host, $user, $pass, $database und $debugmode
# müssen im Vorfeld (am besten im Header der Seite) vorbelegt
# werden.
#
# Beschreibung:
# Führt den angegebenen SQL-Befehl aus.
#
# Syntax:
# array = gf\_runsql(SQL-String)
#
# Rückgabewerte (Beispiel):
# $erg = gf\_runsql("SELECT \* FROM example");
# $erg["RESULT"]; // Handle auf das mySQL-Result
# $erg["INSERTID"]; // Bei SQL-Inserts ID des zuletzt eingefügten Datensatzes
# $erg["COUNT"]; // Anzahl Ergebnisse
# $erg["ERR\_NUM"]; // Bei Fehler - Fehlernummer
# $erg["ERR\_TXT"]; // Bei Fehler - Fehlerbeschreibung
Global $host, $user, $pass, $database, $debugmode;
$db = gf\_dbconnect();
$sql = ltrim($sql);
$type = strtoupper(substr($sql,0,6));
$count = 0;
$insertid = -1;
$result = @mysql\_query($sql);
$insertid = @mysql\_insert\_id();
$err = mysql\_errno();
$errtxt = "";
if($err\<\>0)
{
$errtxt=mysql\_error();
if($debugmode) { echo "
**FEHLER (#$err):** - \"$errtxt\"
"; }
}
else
{
if($type=="ALTER ") {
$count=mysql\_affected\_rows($result);
}
elseif($type=="CREATE") {
$count=-1;
}
elseif($type=="SELECT") {
$count=@mysql\_num\_rows($result);
}
else {
$count=@mysql\_affected\_rows($db["DB"]);
}
}
return array("RESULT" =\> $result,
"COUNT" =\> $count,
"INSERTID" =\> $insertid,
"ERR\_NUM" =\> $err,
"ERR\_TXT" =\> $errtxt);
}
?\>
MfG
Manuel