disign | PHP: funzione per creare un array di risultati da query | a digital sign for a best design!
A digital sign for a best design

Articolo stampato da http://disign.improntedigitali.it/php-funzione-per-creare-un-array-di-risultati-da-query-404-2-1.html

© Luca Frassineti

Programmazione 9.840 visualizzazioni

PHP: funzione per creare un array di risultati da query

29/05/2012

Nel programmare l'estrazione di dati da database attraverso l'invio di query è l'operazione preliminare da svolgere ogni volta che ci serve estrarre un contenuto dinamico.

I nostri script sono pieni di ripetitivi passaggi attraverso gli step standard di definizione della query, invio della query, costruzione dell'array dei risultati.

Costruendo una funzione siamo in grado di 'risparmiarci' la scrittura di questi step ad ogni interrogazione, in questo modo:

 

function sqlEstrai($query) {
$numCampi = mysql_num_fields($query);
$a = 0;
while($row = mysql_fetch_array($query)) {
$b = 0;
while($b < $numCampi) {
$campoNome = mysql_field_name($query, $b);
$array[$a][$campoNome] = $row["$campoNome"];
$b++;
}
$a++;
$b = 0;
}
return $array;
}

 

costruita la funzione per estrarre i dati che ci interessa basterà definire la query e richiamare la funzione (nel codice di esempio facciamo stampare l'array ricavato per verificarne il risultato)

 

$query = mysql_query("SELECT * FROM utenti");
$array = sqlEstrai($query);
echo "<pre>";
print_r($array);
echo "</pre>";

 

che darà, ad esempio,  questo risultato

 

Array
(
    [0] => Array
        (
            [id] => 1
            [email] => pippo@dom.it
            [password] => d8f426b9f4ae274456971ee25b09d872
            [ruolo] => adm
        )

    [1] => Array
        (
            [id] => 2
            [email] => pluto@dev.it
            [password] => 123870be274f6c49b3e31a0c6728957f
            [ruolo] => adm
        )

    [2] => Array
        (
            [id] => 3
            [email] => direttore@giornalino.it
            [password] => d8f426b9f4ae2746e6971ee25b09d872
            [ruolo] => ute
        )

    [3] => Array
        (
            [id] => 4
            [email] => paperino@iol.it
            [password] => 1f3456be274f6c49b3e31a0c6728957f
            [ruolo] => ute
            [regione] =>  
        )

    [4] => Array
        (
            [id] => 5
            [email] => clarabella@net.com
            [password] => ab3870be274f6c49b3e31a0c6728957f
            [ruolo] => ute
        )

    [5] => Array
        (
            [id] => 6
            [email] => qui@topolinia.net
            [password] => cl3870be274f6c49b3e31a0c6728957f
            [ruolo] => adm_parz
        )

    [6] => Array
        (
            [id] => 7
            [email] => qui@topolinia.net
            [password] => xyz870be274f6c49b3e31a0c6728957f
            [ruolo] => ute_sec_liv
        )

)

Invia una domanda o un commento sull'articolo

I campi obbligatori sono segnalati *

*

*



 




Questo sito è totalmente privo di pubblicità, se volete sostenere questa inziativa, potete scegliere di fare una piccola donazione libera:



© 2009 - 2025 Impronte digitali di Luca Frassineti. Tutti i diritti riservati.