Vediamo ora come ci si connette usando le funzioni specifiche di MySQL:
Partiamo con il connetterci al database, ecco la funzione ed i suoi campi fondamentali per la connessione:
mysql_pconnect ( "SERVER", "USERNAME", "PASSWORD");
restituisce 1 se la connessione è avvenuta correttamente e 0 se ci sono stati errori. Da notare che è meglio usare mysql_pconnect(), e non mysql_connect(), perché il primo permette di effettuare connessioni persistenti e, se c’è già una connessione attiva, non ne apre un’altra, migliorando nettamente le prestazioni del sistema.
- SERVER: se lasciato vuoto assumerà il valore di default “
localhost:3306” (localhost sulla porta 3306).
- USERNAME: il nome utente da usare per accedere al database
- PASSWORD: la password per accedere al database.
Questi dati vi devono essere comunicati da chi vi fornisce l’hosting.
È sempre bene controllare che la connessione avvenga in maniera corretta:
$connessione = mysql_pconnect("localhost","nome","password")
or die("Problemi di connessione: ".mysql_error());
La funzione mysql_error() stampa il messaggio di errore di MySQL.
Per lavorare sui dati dobbiamo poi indicare al server quale database usare, usando la funzione mysql_select_db().
mysql_select_db( "DATABASE", $connessione );
Nota: il database deve esistere
e $connessione è la risorsa aperta con la funzione mysql_pconnect().
Anche questa funzione restituisce 0 se ha avuto errori e 1 se è andata a buon fine.
mysql_query(QUERY, [$connessione])
mysql_query() permette di effettuare una query sulla connessione aperta. In caso di query che estrae dei dati restituisce una risorsa o 0 in caso di errore; per query di update, delete, drop e simili restituisce 1 se va a buon fine o 0 in caso di errore.
Se $connessione non viene indicata, si fa riferimento all’ultima connessione effettuata.
La risorsa restituita da mysql_query() può essere passata ad altre funzioni della libreria per analizzare i dati:
mysql_fetch_array($risorsa,[MYSQL_ASSOC| MYSQL_NUM]) permette di accedere ai dati del risultato sotto forma di array numerico o associativo. Se non si indica il tipo di array (MYSQL_ASSOC per array associativo, MYSQL_NUM per array numerico) vengono restituiti entrambi.
mysql_num_rows($risorsa) conta il numero di righe del risultato per un select, oppure
mysql_affected_rows($risorsa) conta il numero di righe su cui ha avuto effetto una insert, delete etc.
mysql_fetch_row() accede ad una riga dei risultati e sposta avanti un puntatore interno. La volta successiva che si richiamerà la funzione, quindi, verrà restituita la riga successiva.
mysql_close($connessione);
Chiude la connessione, se ce ne fosse bisogno.
Esistono inoltre molte altre funzioni utili, documentate sul sito di PHP