Moin!
Abgesehen von Vinzenz' Vorschlag, der in deinem Fall einer Zählung vorzuziehen ist, machst du den üblichen Unfug, erst mal alle Datensätze anzufordern und sie dann zählen zu wollen.
Stimmt nicht. Siehe Code:
$sql = "SELECT
ID
FROM
users
WHERE
Nickname = ?
LIMIT
1";
$stmt = $db->prepare($sql);
$stmt->bind_param("s", $User);
Noch schöner und übersichtlicher kann man das SQL doch gar nicht mehr schreiben. Und noch vorbildlicher Prepared Statements nutzen auch nicht.
Das ändert natürlich nichts daran, dass diese Vorgehensweise nicht atomar ist und deshalb potentiell Duplikate erzeugen könnte.
- Sven Rautenberg