Я протестировал if($fetchergebnis[0] > 0)
, используя var_dump()
, и кажется, что это возвращает Undefined offset:0
плюс bool(false)
, когда оператор ничего не получил (проверял, потому что я никогда не пытался использовать его раньше)
Один из способов - использовать rowCount()
перед выборкой, чтобы проверить, возвращена ли какая-либо строка оператором SELECT
, что-то вроде этого:
$stmt = $pdo->prepare("SELECT rechnungsmail FROM kundendaten WHERE rechnungsmail = :checkmail");
$stmt->execute([':checkmail' => $email_pruefen]);
$ergebnis = ($stmt->rowCount() > 0) ? 'Ja' : 'Nein';
OR
Поскольку вы просто проверяете, существует ли что-то и вам не нужно использовать какие-либо данные, извлеченные из него, вы также можете использовать COUNT(*)
:
$stmt = $pdo->prepare("SELECT COUNT(*) FROM kundendaten WHERE rechnungsmail = :checkmail");
$stmt->execute([':checkmail' => $email_pruefen]);
$count = $stmt->fetchColumn();
$ergebnis = ($count > 0) ? 'Ja' : 'Nein';