Rechercher une fonction PHP

mysqli::__construct

mysqli_connect

(PHP 5, PHP 7)

mysqli::__construct -- mysqli_connectOuvre une connexion à un serveur MySQL

  

Description

Style orienté objet

mysqli::__construct ([ string $host = ini_get("mysqli.default_host") [, string $username = ini_get("mysqli.default_user") [, string $passwd = ini_get("mysqli.default_pw") [, string $dbname = "" [, int $port = ini_get("mysqli.default_port") [, string $socket = ini_get("mysqli.default_socket") ]]]]]] )

Style procédural

mysqli mysqli_connect ([ string $host = ini_get("mysqli.default_host") [, string $username = ini_get("mysqli.default_user") [, string $passwd = ini_get("mysqli.default_pw") [, string $dbname = "" [, int $port = ini_get("mysqli.default_port") [, string $socket = ini_get("mysqli.default_socket") ]]]]]] )

Ouvre une connexion sur un serveur MySQL.

  

Liste de paramètres

host

Peut être un nom d'hôte ou une adresse IP. Si vous passez la valeur NULL ou la chaîne "localhost" à ce paramètre, l'hôte local est sous-entendu. Lorsque c'est possible, les sockets seront utilisées au lieu du protocole TCP/IP.

Préfixer l'hôte par p: ouvre une connexion persistante mysqli_change_user() est automatiquement appelé sur les connexions qui sont utilisées dans le pool de connexions.

username

Le nom d'utilisateur MySQL.

passwd

Si le mot de passe n'est pas indiqué (la valeur NULL est passée), le serveur MySQL essaiera d'identifier l'utilisateur en étudiant que les enregistrements où les utilisateurs n'ont pas de mot de passe. Cela permet à un utilisateur de jouir de plusieurs permissions (selon que l'on fournit le mot de passe ou non).

dbname

Si fourni, spécifiera 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 pour la connexion au serveur MySQL.

socket

Spécifie le socket ou le nom du tunnel à utiliser.

Note:

Spécifier le paramètre socket ne déterminera pas explicitement le type de connexion qui sera utilisé lors de la connexion au serveur MySQL. Cela est déterminé par le paramètre host.

  

Valeurs de retour

Retourne un objet qui représente la connexion au serveur MySQL.

  

Historique

Version Description
5.3.0 Ajout des connexions persistantes.

  

Exemples

Exemple #1 Exemple avec mysqli::__construct()

Style orienté objet

<?php
$mysqli 
= new mysqli('localhost''my_user''my_password''my_db');

/*
 * Ceci est le style POO "officiel"
 * MAIS $connect_error était erroné jusqu'en PHP 5.2.9 et 5.3.0.
 */
if ($mysqli->connect_error) {
    die(
'Erreur de connexion (' $mysqli->connect_errno ') '
            
$mysqli->connect_error);
}

/*
 * Utilisez cette syntaxe de $connect_error si vous devez assurer
 * la compatibilité avec les versions de PHP avant 5.2.9 et 5.3.0.
 */
if (mysqli_connect_error()) {
    die(
'Erreur de connexion (' mysqli_connect_errno() . ') '
            
mysqli_connect_error());
}

echo 
'Succès... ' $mysqli->host_info "\n";

$mysqli->close();
?>

Style orienté objet when extending mysqli class

<?php

class foo_mysqli extends mysqli {
    public function 
__construct($host$user$pass$db) {
        
parent::__construct($host$user$pass$db);

        if (
mysqli_connect_error()) {
            die(
'Erreur de connexion (' mysqli_connect_errno() . ') '
                    
mysqli_connect_error());
        }
    }
}

$db = new foo_mysqli('localhost''my_user''my_password''my_db');

echo 
'Succès... ' $db->host_info "\n";

$db->close();
?>

Style procédural

<?php
$link 
mysqli_connect('localhost''my_user''my_password''my_db');

if (!
$link) {
    die(
'Erreur de connexion (' mysqli_connect_errno() . ') '
            
mysqli_connect_error());
}

echo 
'Succès... ' mysqli_get_host_info($link) . "\n";

mysqli_close($link);
?>

Les exemples ci-dessus vont afficher :

Succès... MySQL host info: localhost via TCP/IP

  

Notes

Note:

MySQLnd s'occupe toujours du jeu de caractères par défaut du serveur. Celui-ci est envoyé durant la négociation de la connexion ou l'authentification.

Libmysqlclient utilise le jeu de caractères par défaut de my.cnf ou via par un appel à mysqli_options() avant mysqli_real_connect(), mais après mysqli_init().

Note:

Uniquement pour la syntaxe orientée objet : pour vérifier si la connexion a échoué, utilisez la fonction mysqli_connect_error() ou la propriété mysqli->connect_error comme dans l'exemple ci-dessus.

Note:

S'il est nécessaire de configurer des options, telles que le délai de connexion, mysqli_real_connect() doit être utilisé.

Note:

Appeler le constructeur sans paramètre a le même effet qu'appeler mysqli_init().

Note:

L'erreur "Can't create TCP/IP socket (10106)" signifie à généralement que la directive de configuration variables_order ne contient pas le caractère E. Sous Windows, si l'environnement n'est pas copié, la variable d'environnement SYSTEMROOT ne sera pas disponible et PHP aura des soucis pour charger Winsock.

  

Voir aussi

Rechercher une fonction PHP

Version en cache

24/11/2024 06:22:54 Cette version de la page est en cache (à la date du 24/11/2024 06:22:54) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.

Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-mysqli.construct.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : http://php.net

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut