Mysql
 sql >> Database >  >> RDS >> Mysql

errore mysql_fetch_assoc() quando i dati nel campo mysql vengono modificati

Non stai facendo alcun controllo degli errori nella tua query, quindi non c'è da meravigliarsi che si interrompa se la query non riesce. Come aggiungere un corretto controllo degli errori è descritto nel manuale su mysql_query() o in questo domanda di riferimento.

Esempio:

$result = mysql_query($SQL);

if (!$result)
 { trigger_error("mySQL error: ".mysql_error());
   die(); }

la tua query si interrompe perché non stai racchiudendo l'input tra virgolette. Puoi evitare* virgolette solo per numeri interi (che 62ac1175 non è). Prova

$SQL = "SELECT * FROM tb_employees WHERE URL_ID = '$URL_ID'";

Inoltre, il codice che mostri è vulnerabile a SQL injection . Usa il metodo di sanificazione corretto della tua libreria (come mysql_real_escape_string() per la classica libreria mysql che stai utilizzando), oppure passa a PDO e istruzioni preparate.

Nel tuo codice, sembrerebbe così:invece di

$URL_ID = $_GET["a"];

fare

$URL_ID = mysql_real_escape_string($_GET["a"]);

* tuttavia, se eviti le virgolette, mysql_real_escape_string() non funzionerà e devi controllare manualmente se il parametro è effettivamente un numero intero.