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

PHP mysql_real_escape_string():Odmowa dostępu dla użytkownika 'www-data'@'localhost'

Albo używasz PDO, albo używasz rozszerzenia mysql, nie używaj obu jednocześnie. mysql_real_escape_string jest funkcją rozszerzenia mysql. Do działania potrzebuje połączenia z bazą danych. Podczas jego wywoływania próbuje nawiązać połączenie, jeśli wcześniej go nie nawiązywałeś za pomocą mysql_connect , gościnnie wymagane poświadczenia logowania. Na twoim lokalnym komputerze najwyraźniej nie masz ochrony hasłem, a nazwa konta użytkownika MySQL jest taka sama jak nazwa, pod którą działa serwer sieciowy, więc szczęśliwie działa. W systemie produkcyjnym poświadczenia są inne i nie można nawiązać połączenia.

Przestań używać mysql_real_escape_string z PDO. Albo użyj funkcji cytowania ciągów PDO, albo, lepiej, użyj przygotowanych i sparametryzowanych zapytań oraz bind Twoje wartości .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy to dziwne, że moje połączenie SQLAlchemy MySQL zawsze kończy się uśpieniem?

  2. Błędy parametrów w Laravel

  3. php mysql przechowuje podziały wierszy w obszarze tekstowym w bazie danych

  4. Przekroczono maksymalny czas wykonania 30 sekund

  5. Połącz dwie tabele, aby uzyskać całe rekordy