ist doch alles korrekt: Du erhälst 1 Datensatz mit dem Ergebnis 7.
Hallo TPler,
mich fuchst gerade ein kleines SQL-Problem.
Eigentlich möchte ich als Ergebnis einer SQL-Abfrage nur die Anzahl (hier: mit COUNT(*) AS ANZAHL) der Zeilen die einem bestimmten Kriterium entsprechen (hier: ID = SESSION['ID']).
In der SQL-Datenbank sind im Beispielfall genau 7 Datensätze, die obigem Kriterium entsprechen.
Hier der PHP-Code:
Allerdings erhalte ich zwei unterschiedliche Ergebnisse.PHP-Code:$sql = "SELECT
COUNT(*) AS ANZAHL
FROM
tabelle AS tab
WHERE
tab.ID = '".$_SESSION['ID']."'";
$result = mysql_query($sql) OR die(mysql_error());
$anzahl = mysql_num_rows($result);
$check = mysql_fetch_assoc($result); // wird nur zur Kontrolle angewandt
In der Variable $anzahl steht immer die Ziffer '1'.
In der Variable $check steht immer die korrekte Anzahl, die Ziffer '7'.
Anmerkung: Führe ich obigen SQL-Befehl direkt in phpMyAdmin aus, erhalte ich das korrekte Ergebnis. D.h. als Anzahl die Ziffer '7'
Freue mich von euch zu hören und schon einmal vorweg – Danke.
Viele Grüße
sage
ist doch alles korrekt: Du erhälst 1 Datensatz mit dem Ergebnis 7.
TYPO3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
Bist du mit der richtigen Datenbank verbunden?Zitat von saga
Steffen hat recht (wie könnte er auch nicht).
Du zählst doch nur die Anzahl der Datensätze und als Ergebnis bekommst Du genau 1 Datensatz zurück, der die Summe der Zählung (7) enthält. Anders würde es aussehen, wenn Du statt COUNT(*) AS Anzahl tatsächlich die Datensätze mit SELECT *, COUNT(*) AS Anzahl auslesen würdest.
#.Viele Grüße - Andreas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
PHP Tutorials und kostenlose Scripts gibt's bei phpBuddy.eu
Follow phpBuddy on Twitter
LTFB - anfängerfreundliche Tutorials
.
Aha ... ich verstehe!![]()
Super ... Danke!
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)