Appuntiphp.com

28 gennaio 2010

Lettura dei dati da un database MySQL con PHP

Una volta stabilita la connessione a MySQL con PHP è possibile effettuare tutte le operazioni possibili ed immaginabili sul database.

In questa sede analizzeremo la lettura dei dati. Iniziamo col creare la tabella su cui testare l’esempio in oggetto, utilizzando il proprio software preferito per la gestione di MySQL.

La tabella si chiamerà “utenti” e sarà corredata dai campi “id” (INT 20 AutoIncrement) e “nominativo” (VARCHAR 100).

Riprendiamo il codice della connessione a MySQL:

<?
    $cn = mysql_connect("nome_server", "username", "password");
    mysql_select_db("nome_database", $cn);

    // Qui il codice PHP per la lettura dei dati da MySQL

    mysql_close($cn);
?>

Vediamo adesso il codice completo per la lettura dei dati:

<?
    $cn = mysql_connect("nome_server", "username", "password");
    mysql_select_db("nome_database", $cn);
    $query = mysql_query("SELECT * FROM utenti", $cn);
    $quanti = mysql_num_rows($query);
    if ($quanti == 0)
    {
        echo "Nessun record!";
    }
    else
    {
        for($x=0; $x<$quanti; $x++)
        {
            $rs = mysql_fetch_row($query);
            $id = $rs[0];
            $nominativo = $rs[1];
            echo "ID: " . $id . "<br>";
            echo "Nominativo: " . $nominativo . "<br><br>";
        }
    }
    mysql_close($cn);
?>

Esaminiamo il funzionamento.

Attraverso la funzione mysql_query eseguiamo la query, passando come parametri la stringa SQL (usando il comando SELECT) ed il nome della connessione che stiamo utilizzando.

Utilizziamo la funzione mysql_num_rows per contare i record presenti nel database in funzione della query che abbiamo eseguito. Questa operazione ci serve ad un duplice scopo.

Il primo scopo è verificare che ci siano record, quindi mostrare un messaggio di avviso se non ci sono record, oppure utilizzare il numero di record come parametro di valutazione all’interno del ciclo for che estrarrà i dati.

All’interno del ciclo, quindi nel caso in cui siano presenti dei dati, utilizziamo la funzione mysql_fetch_row che genera un array i cui item sono i campi della tabella, quindi, nel nostro caso, 0 è l’ID e 1 il nominativo.

In fine stampiamo a video i risultati.

Si testi l’esempio sia senza aggiungere dati nella tabella, sia aggiungendone uno e più altri.

Nessun commento »

Non c'è ancora nessun commento.

RSS feed dei commenti a questo articolo. TrackBack URL

Lascia un commento

Appuntiphp.com è il blog italiano su PHP - Funziona con WordPress