Oto szablon dla wszystkich pytań "istnieje".
To jedyna rzecz, która do tej pory zadziałała dla mnie i nie jest przestarzała.
if ($query = mysqli_query($link, "SELECT header FROM data WHERE var = '$foo'")) {
$header = mysqli_fetch_assoc($query);
if ($header) {
// The variable with value $foo exists.
}
else {
// The variable with value $foo doesn't exist.
}
}
else {
// The query didn't execute for some reason. (Dammit Obama!)
}
OSTRZEŻENIE!
Nawet jeśli zmienna NIE ISTNIEJE Porównanie $ query i mysqli_query() zawsze zwróci TRUE.
Jedynym sposobem - co mi się przydarzyło - do porównania w celu zwrotu FALSE jest błąd składniowy w zapytaniu.
Nie wiem, dlaczego to zadziałało dla faceta, który napisał akceptowaną odpowiedź, może jest to aktualizacja, a może miał błąd składni i był tak pewien, że nie sprawdził, czy kiedykolwiek może być PRAWDA .
Oto ktoś komentarz dokonane w celu skorygowania jego składnię:
„Dodaj kolejny) przed {w pierwszej linii”
Tak, przyjęte rozwiązanie jest błędne!
A więc chcesz zwrócić wiersz, jeśli wartość NIE jest w tabeli? Jestem zmieszany. –
@Rocket Przepraszamy za OGROMNĄ literówkę !! Zmieniono moje pytanie. – Trufa
dzięki. Teraz ma to sens :-P –