Corsi on-line

Riconnettersi a MySQL con PHP

E’ possibile creare uno semplice script che consenta di riconnettersi a MySQL nel caso in cui la connessione, per un qualsiasi motivo, venga meno? La risposta è fortunatamente affermativa e il codice da digitare non è poi tanto.

L’applicazione proposta di seguito prevede di svolgere due semplici funzioni:

  1. effettuare una connessione;
  2. effettuare una riconnessione nel caso in cui la connessione riusulti inattiva.

Ecco di seguito il codice commentato:

function connessione() {
  // connessione al DBMS
  $db = mysql_connect('host', 'user', 'password') or die (mysql_error());
  // selezione del database
  mysql_select_db('nome_database', $db) or die (mysql_error());
  // valore di ritorno
  return $db;
}
// chiamata alla funzione
$db = connessione();
// controllo sullo stato della connessione
if (!mysql_ping($db)) {
  // chiusura corretta della connessione
  mysql_close($db);
  // riconnessione
  $db = connessione();
}

In pratica la nostra piccola funzione:

  1. effettua una connessione e seleziona il database;
  2. controlla se la connessione è attiva;
  3. se la connessione non è stata chiusa correttamente la chiude;
  4. effettua una riconnessione in modo regolare.
Post correlati
  • ciao
    mi permetto un, forse, miglioramento

    while(!mysql_ping($db)){
    // chiusura corretta della connessione
    mysql_close($db);
    //verifica dopo 3 tentativi
    if($prove > 2){break;}
    //sospendo per 5 secondi tra un tentativo e l’altro
    sleep (5);
    // riconnessione
    $db = connessione();
    $prove++;
    }

    cosa ne pensi?

I più letti del mese
Tematiche