Hallo,
{
...
$res = mysqli_query($this->db, "SELECT COUNT(*) FROM meineTabelle WHERE foo='$bar'");
$count = @mysqli_fetch_row($res);
if($count > 0 ){
return true;
}else {
return false;
}
Wenn Du nicht gerade einen Syntaxfehler einbaust - Du solltest deswegen $bar kontextgerecht behandeln (hier mit mysqli_real_escape_string()), dann wird Deine Abfrage *immer* genau einen Datensatz zurückliefern, die Anzahl der zurückgelieferten Datensätze.
Prüfe daher zuerst, ob Deine Abfrage überhaupt ausgeführt werden kann (Datenbankserver stehen manchmal nicht zur Verfügung), prüfe anschließend den Inhalt der gewünschten Spalte der zurückgelieferten Zeile statt die Ressource
// Da Du Deiner Spalte keinen vernünftigen Namen gegeben hast,
// greifst Du hier besser über den Index zu. Deine Abfrage liefert eine Zeile
// mit einer Spalte zurück, deswegen findest Du die Zahl der passenden
// Datensätze in der ersten Spalte, die den Index 0 hat:
if ($count[0] > 0) {
return true;
}
// auf else können wir hier verzichten, durch return im if-Zweig
// kommen wir hier nur hin, wenn die Bedingung nicht zutrifft.
return false;
Freundliche Grüße
Vinzenz