Connettersi con PHP ad un database MySql



Iniziamo col dire che un database MySql non è un file sul server, magari in una cartella dedicata, come avviene, ad esempio con i database Access. Questo tipo di database viene memorizzato in un insieme di file che non è accessibile in modo diretto. Anche se possedete un vostro dominio e un’hosting a pagamento, questo non vi permetterà di accedere direttamente a questi file: potrete modificarli tramite delle query: ovvero delle interrogazioni, dei comandi. Questo rende implicito il fatto che se volete installare uno script che usa un database MySql, non vi basterà fare l’upload del database. Dovete quindi creare le tabelle che compongono il vostro database, magari tramite phpMyAdmin, che vi può semplificare di molto l’operazione, o tramite uno script che creerà, attraverso delle query, le tabelle necessarie.

In realtà è anche possibile fare l’upload del database in formato .sql, ma sempre su phpMyAdmin, non sul server dove risiedono le pagine php, html, ecc…

Dato per scontato che il nostro database sia pronto. Vediamo come è possibile connettersi a quest’ultimo tramite poche righe di codice PHP e restituire, subito, dei dati in una pagina.

Prima di tutto ci servono i dati di accesso al database, quindi: il nome del database il suo host e un username e password di accesso.

Alcuni servizi di hosting vi daranno già questi dati al momento dell’acquisto/attivazione di MySql, in altri casi, dovrete creare voi il database, tramite un pannello come cpanel o Plesk e, dopo aver creato un utente, associare quest’ultimo al database in modo che abbia i privilegi necessari.

Una volta raccolti questi dati, iniziamo il nostro codice PHP:

<?
// parametri di connessione al database
$host = “localhost”;
$ user = “”;
$ password = “”;
$dbname = “”;

In molti casi l’host del vostro database sarà localhost in altri, come ad esempio su Aruba, sarà un IP (indirizzo numerico) o, come ad esempio su tophost sarà nella forma sql.vostrosito.ext

Se il vostro script sarà composto da un notevole numero di pagine, è decisamente consigliabile inserire i dati di connessione al database in un file esterno da includere poi tramite il comando include in tutte le pagine dove sia necessario connettersi al database, in questo modo, se cambierete password o altri dati, dovrete editare un solo file e non decine o centinaia di pagine.

Quindi, questa parte:
// parametri di connessione al database
$host = “localhost”;
$ user = “”;
$ password = “”;
$dbname = “”;

dopo averla completata coi dati necessari, salviamola in un file, ad esempio config.php

e continuiamo:

<?
include(“config.php”);
$db = mysql_connect($host, $user, $password);

Tramite la funzione mysql_connect andiamo a salvare nella variabile $db i dati per identificarci e connetterci al database.

Inseriamo ora un controllo per verificare l’esattezza dei dati di connessione.

if ($db == FALSE)
die (“Errore nella connessione. Verificare i dati nel file config.php”);

Fatto questo indichiamo il nome del database su cui andare a lavorare.

mysql_select_db($dbname, $db)
or die (“Errore di selezione del database. Verificare i dati nel file config.php”);

Dopo aver creato la connessione possiamo finalmente agire sul database per leggere i nostri dati.

Ipotiziamo che il nostro database si chiami ‘clienti’ e contenga dei dati anagrafici, del tipo: nome, cognome, numero di telefono.

Dopo esserci connessi al database dovremo selezionare i campi di nostro interesse tramite SELECT

E specificare in quale tabella andarli a leggere con FROM

$sql = “SELECT nome, cognome, telefono FROM clienti”;

Ora restituiamo i risultati:

$result = mysql_query($sql,$conn)  or die(“impossibile eseguire il comando”);while ($campo = mysql_fetch_row($result)) { echo “nome: $campo[0], cognome: $campo[1], tel.: $campo[2]<br />”;}?>La nostra pagina php che si connette ad un database MySql e legge dei dati è conclusa.

Annunci sponsorizzati:
Condividi su Facebook Condividi su Twitter!
  • simopi

    Si ma non va in remoto… funziona soltanto localmente.

Pinterest