mysql_connect
(PHP 4, PHP 5)
mysql_connect — Ouvre une connexion à un serveur MySQL
Cette extension est obsolète depuis PHP 5.5.0, et sera supprimée dans le futur. À la place, les extensions MySQLi ou PDO_MySQL doivent être utilisées. Voir aussi le guide MySQL : choix de l'API ainsi que la FAQ associée pour plus d'information. Voici les alternatives à cette fonction :
Description
$server
= ini_get("mysql.default_host")
[, string $username
= ini_get("mysql.default_user")
[, string $password
= ini_get("mysql.default_password")
[, bool $new_link
= false
[, int $client_flags
= 0
]]]]] )Ouvre ou réutilise une connexion à un serveur MySQL.
Liste de paramètres
-
server
-
Le serveur MySQL. Il peut aussi inclure le numéro de port. C'est-à-dire "hostname:port" ou le chemin vers le socket local, c'est-à-dire ":/path/to/socket" pour localhost.
Si la directive PHP mysql.default_host n'est pas définie (défaut), alors la valeur par défaut est "localhost:3306". En safe mode SQL, ce paramètre est ignoré et la valeur "localhost:3306" est toujours utilisée.
-
username
-
Le nom d'utilisateur. La valeur par défaut est définie par l'option mysql.default_user. En safe mode SQL, ce paramètre est ignoré et le nom de l'utilisateur propriétaire du processus serveur est utilisé.
-
password
-
Le mot de passe. La valeur par défaut est définie par l'option mysql.default_password. En safe mode SQL, ce paramètre est ignoré et un mot de passe vide est utilisé.
-
new_link
-
Si un deuxième appel est fait à mysql_connect() avec les mêmes arguments, aucune nouvelle connexion ne sera établie, mais plutôt, l'identifiant de la connexion déjà ouverte sera retourné. Le paramètre
new_link
modifie ce comportement et permet à mysql_connect() de toujours ouvrir une nouvelle connexion, même si mysql_connect() a été appelée avant avec les mêmes paramètres. En safe mode SQL, ce paramètre est ignoré. -
client_flags
-
Le paramètre
client_flags
peut être une combinaison des constantes suivantes : 128 (active le gestionnaire LOAD DATA LOCAL),MYSQL_CLIENT_SSL
,MYSQL_CLIENT_COMPRESS
,MYSQL_CLIENT_IGNORE_SPACE
ouMYSQL_CLIENT_INTERACTIVE
. Lisez la section à propos de Constantes client MySQL pour plus d'informations. En safe mode SQL, ce paramètre est ignoré.
Valeurs de retour
Retourne l'identifiant de connexion MySQL en cas de succès ou FALSE
si une erreur survient.
Historique
Version | Description |
---|---|
5.5.0 |
Cette fonction va générer une alerte de niveau
E_DEPRECATED .
|
4.3.0 |
Ajout du paramètre client_flags .
|
4.2.0 |
Ajout du paramètre new_link .
|
Exemples
Exemple #1 Exemple avec mysql_connect()
<?php $link = mysql_connect("localhost", "mysql_user", "mysql_password") or die("Impossible de se connecter : " . mysql_error()); echo 'Connexion réussie'; mysql_close($link); ?>
Exemple #2 Exemple avec mysql_connect() en utilisant la syntaxe hostname:port
<?php // on se connecte à example.com et au port 3307 $link = mysql_connect('example.com:3307', 'mysql_user', 'mysql_password'); if (!$link) { die('Connexion impossible : ' . mysql_error()); } echo 'Connecté correctement'; mysql_close($link); // on se connect à localhost au port 3307 $link = mysql_connect('127.0.0.1:3307', 'mysql_user', 'mysql_password'); if (!$link) { die('Connexion impossible : ' . mysql_error()); } echo 'Connecté correctement'; mysql_close($link); ?>
Exemple #3 Exemple avec mysql_connect() en utilisant la syntaxe ":/path/to/socket"
<?php // on se connect à localhost et à l'interface de connexion, par exemple /tmp/mysql.sock //variante 1 : oublie de localhost $link = mysql_connect(':/tmp/mysql', 'mysql_user', 'mysql_password'); if (!$link) { die('Connexion impossible : ' . mysql_error()); } echo 'Connecté correctement'; mysql_close($link); // variante 2 : avec localhost $link = mysql_connect('localhost:/tmp/mysql.sock', 'mysql_user', 'mysql_password'); if (!$link) { die('Connexion impossible : ' . mysql_error()); } echo 'Connecté correctement'; mysql_close($link); ?>
Notes
Note:
Toutes les fois que vous spécifiez "localhost" ou "localhost:port" en tant que serveur, le bibliothèque client MySQL surchargera cela et essaiera de se connecter à un socket local (nommé pipe sous Windows). Si vous souhaitez utiliser TCP/IP, utilisez "127.0.0.1" au lieu de "localhost". Si la bibliothèque client MySQL essaie de se connecter au mauvais socket local, vous devriez spécifier le chemin d'accès correct à dans votre configurations PHP et laisser le champ du serveur vide.
Note:
La connexion au serveur sera fermée aussitôt que l'exécution du script se termine, à moins qu'elle soit fermée avant en appelant explicitement mysql_close().
Note:
Vous pouvez supprimer les messages d'erreur en cas d'échec en faisant précéder le nom de la fonction par @.
Note:
L'erreur "Can't create TCP/IP socket (10106)" signifie habituellement que la directive de configuration variables_order ne contient pas le caractère E. Sous Windows, si la variable d'environnement n'est pas copiée, la variable d'environnement SYSTEMROOT ne sera pas disponible et PHP aura des problèmes pour charger Winsock.
Voir aussi
- mysql_pconnect() - Ouvre une connexion persistante à un serveur MySQL
- mysql_close() - Ferme la connexion MySQL