SQL count() Ergebnis in php ausgeben
maytay
- php
Hallo ich will das Ergebnis einer Count-Abfrage in einer SQL Datenbank in php ausgeben. Hab das bisher so gemacht, dass ich mir ein array hol und dann die erste stelle ausgebe. Das kommt mir aber irgenwie recht umständlich vor. Kann man das auch besser machen?
Mein Code bis jetzt:
$query1 = "SELECT count(feld) as Anzahl FROM tabelle";
$Rquery1= mysql_query($query1) or die(mysql_error());
$anz = mysql_fetch_array($Rquery1);
echo $anz[0];
hi,
Hallo ich will das Ergebnis einer Count-Abfrage in einer SQL Datenbank in php ausgeben. Hab das bisher so gemacht, dass ich mir ein array hol
Ergebnisse von Datenbankabfragen sollte man m.E. immer zeilenweise abholen - auf einzelne Felder zuzugreifen, ist meist unperformant.
und dann die erste stelle ausgebe. Das kommt mir aber irgenwie recht umständlich vor. Kann man das auch besser machen?
Wenn du nicht den nummerischen Index 0 verwenden willst, kannst du dir natürlich auch ein assoziatives Array liefern lassen. Wenn dir der "Spaltenname" als Key dabei nicht gefällt, dann vergebe in der Query noch einen Alias.
gruß,
wahsaga
n'abend,
Wenn du nicht den nummerischen Index 0 verwenden willst, kannst du dir natürlich auch ein assoziatives Array liefern lassen. Wenn dir der "Spaltenname" als Key dabei nicht gefällt, dann vergebe in der Query noch einen Alias.
Auf den Einsatz von mysql_fetch_array() sollte man IMHO komplett verzichten. Auf den Einsatz von mysql_fetch_row() ebenso. Hier allerdings nicht wegen »unschönem Schwachsinn«, sondern wegen der Lesbarkeit des Codes und der Sicherheit bei Änderungen am SQL
$resultRow[0] // ist ungefähr so verständlich wie: merke Index, scrolle zum Query, schau nach auf welches Feld der Index passt - ganz lustig bei »SELECT * FROM«
$resultRow['colname'] // ist ungefähr so verständlich wie: colname - klasse, oder?
Fangt doch endlich mal an verständlichen Kot zu produzieren ;)
Auf das bisschen Performanceverlust durch den Einsatz von mysql_fetch_assoc() anstelle von mysql_fetch_row() kann man IMHO sche**n.
weiterhin schönen abend...