Nel precedente articolo, abbiamo visto come creare un database MySQL con PHP, connetterci ad esso, come creare una tabella, e come inserire un dato. In questa seconda parte invece vedremo come recuperare i campi dal database.

Selezionare un dato dal database MySQL con PHP

Una volta inserito un dato in un database (es: una registrazione) vorremmo essere capaci anche di riestrarlo all’ occorrenza (es: un login).

Per fare ciò, dopo esserci connessi al database, utilizziamo il comando SELECT per selezionare una colonna (usando asterisco le prendiamo tutte) assieme a FROM che specifica invece il nome della tabella da cui selezionare i dati.

SELECT username, password FROM users

Parlando “php-ese” questo si traduce:

";
  }
//Chiudiamo la connessione:
mysqli_close($con);
?->

In questo modo, selezioniamo tutti i dati dalla tabella e li stampiamo uno per volta.

Selezionare un sottoinsieme di entries dalla tabella MySQL con PHP

Spesso però, quello che succede (ad esempio con un sistema di Login) è che vogliamo selezionare solo una “riga” (entry) dalla tabella, riga che deve rispettare determinate caratteristiche “note”.
Ad esempio, continunando a parlare di un sistema di login, per verificare che l’utente sia effettivamente registrato al nostro sito (ovvero: è presente una riga con “username” e “password” selezionati dall’ utente) dovremo cercare nella tabella tutte le righe (che al momento della registrazione degli utenti dobbiamo fare in modo che siano uniche) dove il campo username è uguale allo username inserito dall’ utente, e la password del campo password sia quella inserita dall’ utente.
Per fare ciò, usiamo WHERE unito al SELECT.

SELECT username, password FROM users WHERE username ='username' AND password = 'password'

Parlando “php-ese” questo si traduce:

 0)
	{
		echo("Bentornato $username!");
	}
	else
	{
		echo("Login errato.");
	}
?>

Logo-mysql

Aggiornare una entry nel database MySQL da PHP

Rimanendo nell’ argomento del sistema di login potremmo voler offrire la possibilità ai nostri utenti di modificare la propria password, o il proprio username.

Per fare ciò, dovremo prendere tutti i dati dell’utente, salvarli, modificarli, e rinserirli nel database. Fortunatamente MySQL ha la funziona UPDATE che ci permette di evitare tutto ciò:

UPDATE username SET username='Fede', password = "password2" WHERE email = 'admin@informaticalab.com'UPDATE username SET username='Fede', password = 'password2' WHERE email = 'admin@informaticalab.com'

Per eseguire la query, la sintassi è sempre la solita:



Logo-mysql

Come cancellare un dato dal database MySQL con PHP

Continuiamo a parlare del sistema di login. L’ ultima cosa che ci manca, è dare la possibilità all’ utente di cancellarsi dal nostro sito. Spesso non è una pratica usata (quand’è stata l’ultima volta che vi siete cancellati da un sito?) ma volendo possiamo offrirla.
Un’altro caso potrebbe essere quello in cui vogliamo “ricominciare da zero” nel collezionare dati, oppure nel caso in cui riconosciamo che un utente sia stato creato a scopo di Spam.

Nonostante tutti i motivi che potremmo avere per cancellare un dato dal database, MySQL utilizza il comando:

DELETE FROM users WHERE username ='Fede'

Usato con PHP:



Potete attivamente vedere il risultato dei vostri script consultando di volta in volta la tabella nel Database tramite linea di comando di MySQL o il più agile PHPMyAdmin.