Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Błędy nieobiektowe przy użyciu PHP PDO z MySQL

Nie potrzebujesz świeżej pary oczu

Nie jesteś malarzem, ale programistą (podobno).
Więc zamiast oglądać swój kod, musisz uruchomić to. I włącz raportowanie błędów.

Och, właśnie to zauważyłem
I oczywiście nie powinieneś kneblować komunikatów o błędach!

} catch(PDOException $ex) {
    return false;
}

nowoczesna wersja operatora @.
Pozbądź się WSZYSTKICH try..catch bloki w kodzie i zacznij ich używać dopiero po nauczeniu się, do czego służą.

Tak więc, aby rozwiązać ten problem, a także wiele innych problemów w przyszłości

  1. Pozbądź się wszystkich bloków try..catch w kodzie.
  2. Włącz raportowanie błędów dla PDO, jak opisano w tagu wiki, do którego połączyłem się w komentarzach.
  3. Nie używaj symboli zastępczych dla identyfikatorów, ale sformatuj je zgodnie z opisem w tagu wiki, do którego się połączyłem
  4. Wyłącz display_errors ustawienie, jeśli nie chcesz, aby błędy były wyświetlane (jedyny powód ukrywania komunikatów o błędach, jaki przychodzi mi do głowy).

Ponadto nie powinieneś otwierać osobnego połączenia w każdym wywołaniu funkcji.
Utwórz jedno połączenie na początku skryptu, a następnie użyj if w funkcji, używając

global $h;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MYSQL ustawia strefę czasową w kodzie PHP

  2. Jak stworzyć w PHP dwukolumnową tabelę z wartościami z bazy danych?

  3. Jak uzyskać dostęp do folderu var i folderu bazy danych MySQL z plikami .frm, .MYD i .MYI każdej tabeli w CPanel?

  4. Laravel Migration - mówi nieznana baza danych, ale jest tworzona

  5. mysql - znacznik czasu wyszukiwania według godziny dnia