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

Tablica pobierania MySQL dodaje zduplikowane wartości?

Jeśli nie określisz typu wyniku jako drugiego parametru, mysql_fetch_array() domyślnie MYSQL_BOTH (cytuję) :


Jeśli to nie jest to, czego chcesz, musisz przekazać drugi parametr do tej funkcji, aby wskazać, jakiego typu wyniki chcesz.

Na przykład, aby uzyskać tylko tablicę asocjacyjną z nazwami kolumn jako kluczami:

$result = mysql_query("SELECT session FROM users WHERE username='$cookie[username]' AND first_name='$cookie[first_name]' AND last_name='$cookie[last_name]' AND campus='$cookie[campus]' AND id='$cookie[id]'");
$user = mysql_fetch_array($result, MYSQL_ASSOC);


Na marginesie:

  • Upewnij się, że zmieniasz znaczenie zmiennych, które wstawiasz do zapytania, aby zapobiec wstrzykiwaniu SQL , używając na przykład mysql_real_escape_string()
  • Przed użyciem mysql_fetch_array() , powinieneś sprawdzić, czy mysql_query() odniósł sukces,
  • A zwłaszcza w przypadku nowego projektu, powinieneś użyć mysqli lub PDO , a nie stary mysql_* funkcje -- patrz Wybór API .


  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 DISTINCT na GROUP_CONCAT()

  2. MySQL NET Connect 6.7.2 w Visual Studio 2012

  3. Java Spring REST API obsługuje wiele opcjonalnych parametrów

  4. Sterownik MySQL JDBC 5.1.33 — problem ze strefą czasową

  5. MySQL Wyszukiwanie pełnotekstowe i SOUNDEX