Datenbankauslesen
dieter
- php
0 Thomas Mang0 dieter
0 Daniel0 dieter
Hallo
Ich hab folgenden Code in meinem PHP Script:
...
mysql_select_db("Erhebung", $verbindung);
$g_aid = $HTTP_POST_VARS["aid"];
$verbindung = mysql_connect($server, $Benutzer, $Kennwort);
echo"Hallo3";
mysql_select_db("Erhebung", $verbindung);
$query = "SELECT * FROM auto, kaeufer, verkauft WHERE auto.aid = verkauf.aid kaeufer.vid = verkauf.kid and auto.aid = '$g_aid'";
$result = MYSQL_QUERY($query);
$number = MYSQL_NUM_ROWS($result);
echo"Hallo4";
$i = 0;
while($i < $number)
{
$pname = mysql_result($result, $i, "aname");
PRINT "$pname<br>";
}
...
Das will aber nicht ganz. Fehlermeldung:
Warning: Wrong parameter count for mysql_num_rows() in /var/www/Erhebung/besitzersuchen.php on line 19
Zeile 19 ist $number = MYSQL_NUM_ROWS($result);
Verbindung zur Datenbank wird hergestellt. Die übergebene Variabel wird richtig erkannt und stimmt auch. Auch die Abfrage hab ich im MySQL Client in der Konsole getestet und sollte passen.
Den großteil des obigen Codes hab ich in einem Buch gelesen. Nachdem meiner nicht wollt, hab ich den original Code probiert und da will er auch das NumRows nicht.
Ich verwende Debian Sarge und PHP4.3.9-2. Kann es sein, dass mir da irgendwelche libs fehlen, oder so? ich mein, ich kann mir nicht vorstellen, dass die im Buch einen BEfehl verwenden, den es nicht gibt, und auch mein Editor färbt mir den Code NumRows als PHP-Code ein.
Dank euch für die Hilfe!
cu
dieter
$query = "SELECT * FROM auto, kaeufer, verkauft WHERE auto.aid = verkauf.aid kaeufer.vid = verkauf.kid and auto.aid = '$g_aid'";
FALLS du da Copy n Paste aus deinem Skript gemacht hast, empfehle ich einfach zwischen verkauf.aid und kaeufer.vid noch ein AND dazwischenzupacken O:)
Wenns nur ein vertipper hier im Forum war hab ich spontan keine idee ...
ja, is ein vertipper
leider :-(
Hi..
also falls du bereit bist dein Code umzustellen, hab ich hier eine lösung für dich, die funktioniert. Zumindest bei mir =:0) Musst sie natürlich noch nach Deinen Wünschen unstellen..
$db_host="localhost";
$db_name="Datenbank";
$db_user="User";
$db_pass="PASS";
$db=@MYSQL_PCONNECT($db_host,$db_user,$db_pass) or die ("Konnte keine Verbindung aufbauen");
if ($db) {
$db_check = @MYSQL_SELECT_DB($db_name,$db) or die ("Konnte keine Tabelle auswählen");
if ($db_check) {
$result = mysql_query("SELECT * FROM Auto");
if ($result) {
while ($row = mysql_fetch_object ($result)) {
if($Auto == $row -> Verkauf) {
}
}
}
}
sonst musst du mal auf www.selfphp.de gucken, da sind die Funktionen nochmal mit beispielen erklärt..
Gruß Daniel
also falls du bereit bist dein Code umzustellen, hab ich hier eine lösung...
wäre ich sofort! aber mysql_fetch_object mag er auch nicht. gleiche fehlermeldung wie bei numrows :-(