Vérifie la connexion au serveur MySQL, et s'y reconnecte au besoin

# mysql_ping

(PHP 4 >= 4.3.0, PHP 5)

mysql_ping — Vérifie la connexion au serveur MySQL, et s'y reconnecte au besoin

Avertissement

Cette extension était obsolète en PHP 5.5.0, et a été supprimée en PHP 7.0.0. À la place, vous pouvez utiliser l'extension MySQLi ou l'extension PDO_MySQL. Voir aussi MySQL : choisir une API du guide. Alternatives à cette fonction :

- mysqli_ping()

### Description

function mysql_ping(resource `$link_identifier` = NULL): bool

mysql_ping() vérifie si la connexion au serveur `link_identifier` fonctionne. Si elle est tombée, une reconnexion automatique est effectuée. Cette fonction est utile pour les scripts qui restent inactifs durant un long moment. Ils peuvent ainsi vérifier si le serveur a fermé la connexion, pour cause d'inactivité.

> Note: La reconnexion automatique est désactivée par défaut depuis la version 5.0.3 et suivants de MySQL.

### Liste de paramètres

`link_identifier`
  La connexion MySQL. S'il n'est pas spécifié, la dernière connexion ouverte avec la fonction mysql_connect() sera utilisée. Si une telle connexion n'est pas trouvée, la fonction tentera d'ouvrir une connexion, comme si la fonction mysql_connect() avait été appelée sans argument. Si aucune connexion n'est trouvée ou établie, une alerte de niveau `E_WARNING` sera générée.

### Valeurs de retour

Retourne `true` si la connexion au serveur MySQL fonctionne, `false` sinon.

### Exemples

Exemple #1 Exemple avec mysql_ping()

    <?php
    set_time_limit(0);

    $conn = mysql_connect('localhost', 'mysqluser', 'mypass');
    $db   = mysql_select_db('mydb');

    /* En supposant que l'exécution de la requête prend beaucoup de temps */
    $result = mysql_query($sql);
    if (!$result) {
       echo 'Requête #1 a échoué, sortie.';
       exit;
    }

    /* S'assure que la connexion est toujours active, sinon, tentative de reconnexion */
    if (!mysql_ping($conn)) {
       echo 'Perte de la connexion, sortie après la requête #1';
       exit;
    }
    mysql_free_result($result);

    /* Donc, la connexion est toujours active, exécutons une autre requête */
    $result2 = mysql_query($sql2);
    ?>

### Voir aussi

- mysql_thread_id() - Retourne l'identifiant du thread MySQL courant
- mysql_list_processes() - Liste les processus MySQL

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open