PHP/Programmazione/MySQL/Query
L'invio di una query MySQL in PHP avviene tramite la funzione mysql_query
la cui sintassi è:
mysql_query(query, connessione)
dove query è una stringa contenente il testo della query MySQL da eseguire e connessione è un puntatore di risorsa aperta con la funzione mysql_connect
e connessa ad un database.
A seconda del tipo di query inviata al database, la funzione mysql_query restituisce valori differenti:
- se la query è di inserimento restituisce un puntatore al fieldset ottenuto dall'esecuzione della query (ad esempio una query come
"SELECT * FROM registrati"
dell'esempio precedente) - negli altri casi la query restituisce un valore boolean che indica l'esito positivo o meno della query
Nell'invio di una query è necessario, se non viene già fatto dal server MySql, convertire i caratteri come gli apostrofi con la loro commutazione \', in quanto potrebbero dare problemi per quanto riguarda l'invio di stringhe alfanumeriche, tramite la funzione addslashes
, la cui sintassi è
addslashes(stringa_da_commutare)
e restituisce la stringa stessa con i caratteri speciali commutati. La sua funzione inversa è
stripslashes(stringa_già_commutata)
È consigliabile inoltre prevedere controlli per evitare intrusioni indesiderate da parte di hacker, evitando ad esempio che eventuali campi di input (per esempio nome utente o password) contengano spazi, i quali permetterebbero l'esecuzione di JOIN o query multiple.