PHP – Mysql – INSERT -SELECT

Adesso che si è creato il database, create le tabelle si devono inserire dei record o estrarli.

In particolare inserisco un record nella tabella login.

Dopo aver eseguito tale php ho il seguente messaggio:

E vado a vedere nel database tramite Mysql workbench il valore che ho inserito.

Da notare subito che la password non è in chiaro ma ho usato la funzione SHA256 presente nativamente in php .

Siccome ho creato la tabella con un campo che si incrementa non serve chiaramente usarlo nell’insert e si demanda al DBMS la sua gestione.

Per verificare che il record sia stato inserito si possono usare i metodi affect o record id.

Il messaggio che compare dopo aver eseguito il codice precedente è:

Si evidenzia subito, comunque che una tabella così strutturata non è logicamente accettabile nel senso che posso inserire più record con la stesso login!

VERIFICA PRESENZA DEL RECORD

Il metodo num_rows(), sempre applicabile alla classe mysqli_result, restituisce il numero di righe ottenute dalla select e avremo quindi un risultato superiore a 0 solo nel caso in cui le credenziali siano valide.

Qundi num_rows è un metodo della classe mysqli_result!

Potevo usare anche un nuovo metodofetch_all

fetch_all() è un metodo molto flessibile, che produce un array per ogni record, numerico (MYSQLI_NUM), associativo (MYSQLI_ASSOC) o di entrambe le tipologie (MYSQLI_BOTH) a seconda della costante che passeremo come argomento. Il codice proposto produrrà quindi come risultato:

About Francesco Bragadin

Insegno informatica e telecomunicazioni al liceo scienze applicate ed all'indirizzo informatica e telecomunicazioni. Ho terminato gli studi in ingegneria elettronica e telecomunicazioni lavorando per molti anni come libero professionista nell'ambito della gestione storage e disaster recovery su mainframe.
This entry was posted in Senza categoria. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *