Imparare il PHP: Database
autore: Orebla
xx/xx/xx
Accortezze nell'utilizzo, MySql:
Ho voluto aggiungere questa pagina perchè mi sembra giusto
condividere con voi le accortezze, cioè i trucchi, che ho imparato con il tempo
per ottimizzare la connessione e gli script che creiamo per questo.
Se ricordate nella prima guida, in cui spiego come collegarsi al
database, ho accennato al fatto che è possibile velocizzare l'inserimento di
pass e nome utente per le connessioni. Vi faccio un esempio, mettiamo che
abbiamo creato per il nostro sito 15 script che richiedono connessione al
database.
Purtroppo un pirata informatico è venuto a conoscenza della
password... Cosa facciamo?? Cambiamo subito la password e siamo al sicuro...
Ora però dobbiamo modificare tutti i 15 script di connessione,
file per file, pass per pass... La cosa diventa abbastanza lunga o no??
Bene quello che vi consiglio sempre è di utilizzare un unico
file per contenere nome utente, password, nome database e magari altri dati
molto utilizzati.
Creiamo il file "configurazione.php" e al suo interno
inseriamo le variabili:
<?php
//File di configurazione per la
connessione al database
//Non vi preoccupate il file e il suo contenuto non sarà visibile a nessuno
//Dato che il server elaborerà il codice PHP
$nome_utente =
"NOME"; //Qui ci va il nome utente per la connessione
$pass_utente = "PASS"; //Password di connessione
$nome_database = "NOMEDATA"; //Nome database
$nome_host = "localhost"; //Nel 90% dei casi è localhost
?>
Ora dato che abbiamo creato il file possiamo richiamarlo nel
nostro script tramite la funzione include() [
info],
questo serve per includere all'interno della pagina le variabili.
Ecco il nostro script di connessione, riporto lo stesso che ho
messo nella prima guida sui database:
<?php
include("configurazione.php");
//Richiama le variabili di configurazione
$connessione = mysql_connect($nome_host,$nome_utente,$pass_utente)or
die("Connessione non riuscita: ".
mysql_error());
print ("Connesso con
successo");
mysql_select_db($nome_database,
$connessione) or die("Errore nella selezione del database";
mysql_close($connessione);
?>
Come vedete semplicemente aggiungendo qualche riga abbiamo
unificato tutto, così se si presenta un caso come quello che ho mostrato di
esempio prima in un attimo cambiamo i dati a tutti gli script!!
Ora devo fare qualche specificazione, i più esperti sapranno
che esistono altre funzioni per includere i file all'interno di altri
file/script.
Queste sono:
-
require()
[info]
-
require_once
[info]
-
include_once
[info]
oltre ovviamente ad include... Vi ho messo i link per avere più
informazioni sulle diverse funzioni di esse. Non saprei consigliarvi quale di
queste siano meglio o peggio. Voi leggetevi le specifiche e decidete quale sia
meglio per i vostri script!
Per i super esperti, la connessione al
database può essere un elemento molto importante dei vostri script, sopratutto
se questi si basano sulla dinamicità dei dati. Quindi se volete ottimizzare al
massimo il vostro script vi consiglio di creare delle classi che svolgono il
compito di connessione, di svolgimento della query!!