Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][PDO] Elegancka obsługa błędów z metodą fetch() ?
Forum PHP.pl > Forum > Przedszkole
ZaXaZ
  1. $us = $PDO->prepare('SELECT * FROM `users` WHERE `numer`=?;');
  2. if ($us)
  3. {
  4. $er = $us->execute(array($from));
  5. }
  6. if ($er)
  7. {
  8. if ($er->fetch(PDO::FETCH_ASSOC))
  9. {
  10. $user = $er;
  11. }
  12. else
  13. {
  14. //wstawienie rekordu do bazy, jesli nie istnieje.
  15. exit;
  16. }
  17. }


próbowałem już try-catch i bez powodzenia...

Kod
<b>Fatal error</b>:  Call to a member function fetch() on a non-object
memory
  1. $us->fetch(PDO::FETCH_ASSOC)


Turson
PDOException
http://pl.wikibooks.org/wiki/PHP/Biblioteka_PDO
ZaXaZ
@memory, hmmm ... bez if'a juz bylo. Jednak wazne jest zeby wstawialo rekord jesli nie istnieje.
@Turson, robilem juz catch(PDOException $e) tak jak pisalem.
Turson
Jak wstawiało rekord, jeżeli masz SELECT a nie INSERT?

Błędy zapytań możesz obsłużyć też:
  1. $stmt = $pdo->prepare('zapytanie');
  2. if(!$stmt->execute()) print_r($stmt->errorInfo());
ZaXaZ
Cytat(Turson @ 14.06.2014, 15:59:19 ) *
Jak wstawiało rekord, jeżeli masz SELECT a nie INSERT?

Błędy zapytań możesz obsłużyć też:
  1. $stmt = $pdo->prepare('zapytanie');
  2. if(!$stmt->execute()) print_r($stmt->errorInfo());


1. zastąpiłem kod komentarzem bo offtopowy;
2. dzięki, działa.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.