Come realizzare un piccolo programma in PHP che permetterà di visualizzare con il browser le informazioni contenute nella tabella dati del database agenda.
PHP e MySQL mettono a disposizione moltissime funzioni che consentono l'interazione e la comunicazione tra i due linguaggi. Non è nell'intenzione di questo tutorial elencare tutte le funzioni del PHP, per fare questo vi consiglio di consultare le guide approfondite di PHP e MySQL. Però vedremo a cosa servono le funzioni utilizzate per realizzare il programma.
Include: Serve ad includere negli script PHP un file esterno che ha lo scopo di collegare alcuni script. 
Oltre alla funzione include esiste anche require. Tutti e due le funzioni fanno la stessa cosa ma include, una volta avviato lo script in una pagina, lo mantiene in modo persistente. Requie, invece, attiva lo script solo una volta. 
Faccio un esempio. In un sito web realizzato con i frames, utilizzando la funzione include, questa permetterà di aprire le informazioni che dovranno sempre essere evidenziate nell'intestazione del sito, il noto header. Require, invece, visualizzerebbe le informazioni solo una volta e, cambiando pagina del sito, non troveremo più quelle informazioni.

Il codice sottostante fa parte del file che ho chiamato connessione.php, ci permette di attivare il collegamento per visualizzare le informazioni nel database.

<?
$host='localhost';
$user='root';
$password='';
$database='agenda';
$db=mysql_connect($host, $user, $password)
or die ("Impossibile connettersi al server $host");
mysql_select_db($database, $db)
or die ("Impossibile connettersi al database $database");
?>

Vediamo il codice nei particolari:
-localhost è la connessione al server locale. Può variare da server a server, in questo caso è in locale e va benissimo localhost
-user è il nome utente del database. In questo caso è root (radice) proprio perché è in locale e non in remoto. In remoto occorre aggiungere la username fornita dal gestore del server.
-password la password è nulla per lo stesso motivo che ho spiegato riguardo a user. Volendo può essere anche tolta dallo script. Ho referito lasciarla perché il codice potrebbe essere utile anche per una eventuale connessione in remoto.
-agenda è il database dove il programma dovrà collegarsi
-mysql_connect è la funzione che apre la connessione vera e propria al database
-or die sono due avvisi che verranno visualizzati nel caso non ci fosse la connessione al web server o al database
-mysql_select_db è la funzione che seleziona il database

Sotto il programma in PHP che permetterà di visualizzare le informazioni inserite nel database.

<?php
include("connessione.php");

print "<strong>Data</strong>: ";
print date("d-m-y");
print " <strong>Ora</strong>: ";
print date("H-i-s");
print"<br><br>";
$interrogo=mysql_db_query("agenda","SELECT*FROM dati");
$numerirecord=mysql_num_rows($interrogo);
for($a=0; $a<$numerirecord; $a++)
{
$cognome=mysql_result($interrogo, $a, "cognome");
$nome=mysql_result($interrogo, $a, "nome");
$cellulare=mysql_result($interrogo, $a, "cellulare");
$email=mysql_result($interrogo, $a, "email");
print"<strong>Cognome</strong>: $cognome<br> <strong>Nome</strong>: $nome<br>";
print"<strong>Cellulare</strong>: $cellulare<br> <strong>E-mail</strong>: $email<br>";
print"<hr width='250' size='1' color='#0000FF' align='left'>";
}
?>

Include come ho già anticipato, è la funzione che permette di includere nel codice PHP il file per la connessione al database connessione.php
date("d-m-y") date("H-i-s") queste due funzioni stampano la data e l’ora. L’ora ha anche i secondi che si aggiornano ogni qualvolta si apre o si effettua un aggiornamento alla pagina web.
mysql_db_query è la funzione che interroga il database agenda, anche attraverso select e from, in merito alle informazioni presenti nella tabella dati.
"agenda","SELECT * FROM dati" questa parte di codice permette di selezionare tutti i record della tabella. Se volessimo selezionare soltanto alcuni campi dei record della tabella, ad esempio cognome e telefono, dovevamo inserire il seguente codice: “agenda”,”SELECT cognome, telefono FROM dati”
mysql_num_rows evidenzia il numero dei risultati presenti nella tabella. Ma in questo esercizio non lo stampiamo a video.
for è un ciclo e funziona da contatore per i record presenti nella tabella con un incremento della variabile. Inizia da zero fino ad arrivare all’ultimo record.
mysql_result è la funzione che fornisce il risultato dell’interrogazione al database.
print per la stampa a video dei risultati.

Tra le singole informazioni è stata inserita anche una linea di separazione di 250 pixel.

Se visualizziamo il programma attraverso il browser otterremo il seguente risultato:

Cognome: Bianchi
Nome: Ermenegildo
Cellulare: 326/2265988
E-mail: This email address is being protected from spambots. You need JavaScript enabled to view it.


Cognome: Rossi
Nome: Adalgiso
Cellulare: 265/9658752
E-mail: This email address is being protected from spambots. You need JavaScript enabled to view it.


Cognome: Persistente
Nome: Immacolata
Cellulare: 123/2136598
E-mail: This email address is being protected from spambots. You need JavaScript enabled to view it.


Cognome: Te lo dicevo
Nome: Che era facile
Cellulare: 548/6598759
E-mail: This email address is being protected from spambots. You need JavaScript enabled to view it.