mysqli_real_connect

(PHP 5)

mysqli_real_connect

(no version information, might be only in CVS)

mysqli->real_connect() -- Ouvre une connexion à un serveur MySQL

Description

Style procédural

bool mysqli_real_connect ( mysqli link [, string host [, string username [, string passwd [, string dbname [, int port [, string socket [, int flags]]]]]]] )

Style orienté objet (méthode)

class mysqli {

bool real_connect ( [string host [, string username [, string passwd [, string dbname [, int port [, string socket [, int flags]]]]]]] )

}

Tente d'établir une connexion avec un serveur MySQL d'un hôte.

Cette fonction diffère de mysqli_connect() en ces points :

Liste de paramètres

link

Style procédural uniquement : Un identifiant de lien retourné par la fonction mysqli_connect() ou par la fonction mysqli_init()

host

Peut être soit un nom d'hôte, soit une adresse IP. Si vous passez la valeur NULL ou la chaîne de caractères "localhost", l'hôte local sera utilisé. Lorsque c'est possible, un tunnel sera utilisé au lieu du protocole TCP/IP.

username

Le nom d'utilisateur MySQL.

passwd

Si fourni ou si vaut NULL, le serveur MySQL tentera d'identifier l'utilisateur par rapport aux utilisateurs présents dans la base MySQL qui n'ont pas de mot de passe associé. Ceci permet à un utilisateur d'être utilisé avec des permissions différentes (suivant si un mot de passe est fourni ou non).

dbname

Si fourni, spécifie la base de données par défaut à utiliser lors de l'exécution de requêtes.

port

Spécifie le numéro du port à utiliser pour la connexion au serveur MySQL.

socket

Spécifie le socket ou le tunnel nommé à utiliser..

Note : Le fait de spécifier le paramètre socket ne détermine pas de façon explicite le type de connexion à utiliser lors de la connexion au serveur MySQL. La façon dont la connexion est réellement effectuée dépend du paramètre host.

flags

Avec le paramètre flags, vous pouvez définir différents options de la connexion :

Tableau 1. Flags supportés

NomDescription
MYSQLI_CLIENT_COMPRESSUtilise un protocole de compression
MYSQLI_CLIENT_FOUND_ROWSRetourne le nombre de lignes sélectionnées, et non pas le nombre de lignes affectées
MYSQLI_CLIENT_IGNORE_SPACEAccepte les espaces après les noms de fonctions. Fait que tous les noms de fonctions sont des mots réservés.
MYSQLI_CLIENT_INTERACTIVE Permet interactive_timeout secondes (au lieu de wait_timeout secondes) d'inactivité avant de fermer la connexion.
MYSQLI_CLIENT_SSLUtilise SSL (chiffrage)

Note : Pour des raisons de sécurité, le flag MULTI_STATEMENT n'est pas supporté en PHP. Si vous voulez exécuter plusieurs requêtes, utilisez la fonction mysqli_multi_query().

Valeurs de retour

Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.

Exemples

Exemple 1. Style orienté objet

<?php

/* Création d'un objet de connexion, sans être connecté */
$mysqli = mysqli_init();

/* Définition des quelques options de connexion */
$mysqli->options(MYSQLI_INIT_COMMAND, "SET AUTOCOMMIT=0");
$mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT, 5);

/* Connexion au serveur */
$mysqli->real_connect('localhost', 'my_user', 'my_password', 'world');

/* Vérification de la connexion */
if (mysqli_connect_errno()) {
    
printf("Échec de la connexion : %s\n", mysqli_connect_error());
    exit();
}

printf ("Connecté : %s\n.", $mysqli->host_info);

$mysqli->close();
?>

Exemple 2. Style procédural

<?php

/* Création d'un objet de connexion, sans être connecté */
$link = mysqli_init();

/* Définition des quelques options de connexion */
mysqli_options($link, MYSQLI_INIT_COMMAND, "SET AUTOCOMMIT=0");
mysqli_options($link, MYSQLI_OPT_CONNECT_TIMEOUT, 5);

/* Connexion au serveur */
mysqli_real_connect($link, 'localhost', 'my_user', 'my_password', 'world');

/* Vérification de la connexion */
if (mysqli_connect_errno()) {
    
printf("Échec de la connexion : %s\n", mysqli_connect_error());
    exit();
}

printf ("Connecté : %s\n.", mysqli_get_host_info($link));

mysqli_close($link);
?>

L'exemple ci-dessus va afficher :

Connecté : Localhost via UNIX socket

Voir aussi

mysqli_connect()
mysqli_init()
mysqli_options()
mysqli_ssl_set()
mysqli_close()