Strumenti Utente

Strumenti Sito


php:select_php

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
php:select_php [2024/04/16 07:46] – [Sintassi MySql] davidnphp:select_php [2024/04/16 09:50] (versione attuale) – [Query di selezione nel PHP] davidn
Linea 51: Linea 51:
  
 Una query può produrre una tabella con **zero righe**. Può accadere sia quando la tabella è vuota sia quando le condizioni del WHERE non vengono soddisfatte da nessua riga. Una query può produrre una tabella con **zero righe**. Può accadere sia quando la tabella è vuota sia quando le condizioni del WHERE non vengono soddisfatte da nessua riga.
 +
 +===== Query di selezione nel PHP =====
 +
 +Per lanciare una SELCT usando il PHP, bisogna utilizzare la funzione **mysqli_query()**.
 +Prima di eseguire una query si deve aprire la connessione con il server.
 +
 +<Code:php linenums:1 | query di selezione con PHP>
 +//apriamo la connsessione
 +$link = mysqli_connect('127.0.0.1','root','','utenti');
 +//definiamo la query come una stringa
 +$query = "SELECT id,email FROM utenti"; //selzioniamo per intero le colonne id e email
 +//lanciamo la query e memorizziamo il risultato
 +$res=mysqli_query($link,$query);
 +//se la query va a buon fine dentro $res c'è una tabella
 +//se la query è scritta male dentro $res c'è false
 +if(!$res) die('Qualcosa è andato storto'); //die blocca l'esecuzione del codice
 +//se sono qui la query è scritta bene
 +if(mysqli_num_rows($res)>1){ 
 +    //mysqli_num_rows mi dice quante righe ci sono in $res
 +    //c'è almeno una riga
 +    while ($row=mysqli_fetch_assoc($res){
 +        //mysqli_fetch_assoc prende l'attuale riga di $res e la inserisce in un array associativo
 +        //fatto questo si posiziona sulla riga successiva
 +        //quando le righe sono finite torna false
 +        echo $row['id'].' '.$row['email'];
 +        //gli indici dell'array associativo sono i nomi dei campi sulla tabella
 +    }
 +} else {
 +    echo "la query non ha prodotto risultati";
 +}
 +</Code>
 +
 +Come detto il risultato di una SELECT è una tabella, quindi in $res c'è una tabella.
 +Il PHP non può gestire una tabella tutta insieme, quindi si scorre la tabella una riga alla volta e si tratta ogni singola riga come un array associativo.
 +
 +La gestione di una query di selezione avviene sempre nello stesso modo, quello che può cambiare è la query stessa, in base alla query ci si può aspettare un numero di risultati più delimitato.
 +
php/select_php.1713253573.txt.gz · Ultima modifica: 2024/04/16 07:46 da davidn