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

Czy ktoś może mi pomóc zrozumieć znaczenie tego komunikatu o błędzie php?

Musisz zmienić znaczenie swoich wartości POST przed wstawieniem ich do zapytania. Należy zmienić znaczenie wartości POST przed użyciem ich w zapytaniu do bazy danych.

Zamiast tego:

$data = mysql_query("SELECT * from users where user_name == ($_POST['user_name']) and ($_POST['password']) and ($_POST['user_type'])"

Zrób to:

$user_name = mysql_real_escape_string($_POST['user_name']);
$password = mysql_real_escape_string($_POST['password']);
$user_type = mysql_real_escape_string($_POST['user_type']);
$data = mysql_query("SELECT * FROM users WHERE user_name == '$user_name' AND password == '$password' AND user_type == '$user_type'");

Zwróć uwagę, że zakładam, że Twoje kolumny w tabeli to „nazwa_użytkownika”, „hasło” i „typ_użytkownika”.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. php nie zapisuje danych w mysql

  2. Tabela MySQL jest oznaczona jako uszkodzona i ostatnia (automatyczna?) naprawa nie powiodła się

  3. Korzystanie z automatyzacji w celu przyspieszenia testów wersji w klastrze Galera z ClusterControl

  4. jak rzutować szesnastkowy na varchar(datetime)?

  5. AWS MySQL RDS kontra AWS DynamoDB