Manuel PHP
Précédent |  | Suivant

# 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 :

- mysqli_real_connect() a besoin d'un objet valide issu de la fonction mysqli_init()

- Avec la fonction mysqli_options(), vous pouvez définir différentes options pour la connexion

- Il y a un paramètre `flags`

## 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

  Nom | Description
  --- | ---
  `MYSQLI_CLIENT_COMPRESS` | Utilise un protocole de compression
  `MYSQLI_CLIENT_FOUND_ROWS` | Retourne le nombre de lignes sélectionnées, et non pas le nombre de lignes affectées
  `MYSQLI_CLIENT_IGNORE_SPACE` | Accepte 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_SSL` | Utilise 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()

Précédent | Sommaire | Suivant
mysqli_query | Niveau supérieur | mysqli_real_escape_string