Fonction MySQL PHP
- Page précédente PHP Math
- Page suivante PHP MySQLi
Introduction à PHP MySQL
Les fonctions MySQL vous permettent d'accéder au serveur de base de données MySQL.
Installation
Pour pouvoir utiliser les fonctions de cette classe sans heurt, il est nécessaire d'ajouter le support MySQL lors de la compilation de PHP.
Pour compiler, utilisez simplement l'option de configuration --with-mysql[=DIR], où [DIR] est optionnel et pointe vers le répertoire d'installation de MySQL.
Bien que cette bibliothèque d'extension MySQL soit compatible avec les versions 4.1.0 et ultérieures de MySQL, elle ne prend pas en charge les fonctionnalités supplémentaires fournies par ces versions. Pour utiliser ces fonctionnalités, utilisez l'extension MySQLi.
Si vous devez installer à la fois les bibliothèques d'extensions mysql et mysqli, vous devez utiliser la même bibliothèque client pour éviter tout conflit.
Installation sur le système Linux
PHP 4
L'option --with-mysql est activée par défaut. Ce comportement par défaut peut être désactivé à l'aide de l'option de configuration --without-mysql. Si MySQL est activé sans spécifier le répertoire d'installation, PHP utilisera la bibliothèque de connexion client MySQL liée.
Les utilisateurs d'autres applications utilisant MySQL (par exemple auth-mysql) ne doivent pas utiliser la bibliothèque liée, mais doivent spécifier le répertoire d'installation de MySQL, comme suit : --with-mysql=/chemin/vers/mysql. Cela force PHP à utiliser la bibliothèque de connexion client installée avec MySQL, évitant ainsi tout conflit.
PHP 5+
MySQL n'est pas activé par défaut et n'a pas de bibliothèque MySQL liée. Utilisez l'option de configuration --with-mysql[=DIR] pour ajouter le support MySQL. Vous pouvez obtenir MySQL Télécharger les fichiers d'en-tête et les bibliothèques.
Installation sur le système Windows
PHP 4
L'extension PHP MySQL est déjà compilée dans PHP.
PHP 5+
MySQL n'est pas activé par défaut, par conséquent, il est nécessaire de désactiver le fichier dynamique php_mysql.dll dans php.ini. De plus, PHP a besoin d'accéder à la bibliothèque de connexion client MySQL. La version Windows de PHP inclut un libmysql.dll, afin que PHP puisse communiquer avec MySQL, ce fichier doit être placé dans le chemin système PATH de Windows.
Pour activer toute bibliothèque d'extension PHP (par exemple php_mysql.dll), l'instruction extension_dir doit être définie sur le répertoire contenant la bibliothèque d'extension PHP. Un exemple de valeur pour extension_dir sous PHP 5 est c:\php\ext.
Commentaires :Si vous rencontrez une erreur similaire à celle suivante lors du lancement du serveur web : "Impossible de charger la bibliothèque dynamique './php_mysql.dll'", c'est parce que le système ne trouve pas php_mysql.dll et / ou libmysql.dll.
Configuration en temps réel
Le comportement des fonctions MySQL est influencé par les réglages de php.ini.
Options de configuration MySQL :
Nom | Par défaut | Description | Modifiable |
---|---|---|---|
mysql.allow_persistent | "1" | Autoriser les connexions persistantes de MySQL. | PHP_INI_SYSTEM |
mysql.max_persistent | "-1" | Nombre maximum de connexions persistantes par processus. | PHP_INI_SYSTEM |
mysql.max_links | "-1" | Nombre maximum de connexions par processus, y compris les connexions persistantes. | PHP_INI_SYSTEM |
mysql.trace_mode | "0" | Mode de suivi. Disponible depuis PHP 4.3.0. | PHP_INI_ALL |
mysql.default_port | NULL | Port TCP du serveur de connexion par défaut. | PHP_INI_ALL |
mysql.default_socket | NULL | Nom du socket par défaut. Disponible depuis PHP 4.0.1. | PHP_INI_ALL |
mysql.default_host | NULL | Adresse du serveur par défaut. Ne s'applique pas au mode SQL sécurisé. | PHP_INI_ALL |
mysql.default_user | NULL | Nom d'utilisateur par défaut utilisé. Ne s'applique pas au mode SQL sécurisé. | PHP_INI_ALL |
mysql.default_password | NULL | Mot de passe par défaut utilisé. Ne s'applique pas au mode SQL sécurisé. | PHP_INI_ALL |
mysql.connect_timeout | "60" | Nombre de secondes avant expiration de la connexion. | PHP_INI_ALL |
Type de ressource
Deux types de ressources sont utilisés dans le module MySQL. Le premier est le gestionnaire de connexion de la base de données, le second est le jeu de résultats retourné par la requête SQL.
Fonction MySQL PHP
PHP :Indique la version PHP la plus ancienne qui prend en charge cette fonction.
Fonction | Description | PHP |
---|---|---|
mysql_affected_rows() | Obtient le nombre de lignes d'enregistrement affectées par l'opération MySQL précédente. | 3 |
mysql_change_user() | Non recommandé. Changez l'utilisateur connecté dans la connexion active. | 3 |
mysql_client_encoding() | Retourne le nom de l'encodage de caractères de la connexion actuelle. | 4 |
mysql_close() | Fermez une connexion MySQL non persistante. | 3 |
mysql_connect() | Ouvrir une connexion MySQL non persistante. | 3 |
mysql_create_db() | Non recommandé. Créez une base de données MySQL. Utilisez mysql_query() à la place. | 3 |
mysql_data_seek() | Déplace le pointeur de enregistrement. | 3 |
mysql_db_name() | Retourne le nom de la base de données à partir de l'appel mysql_list_dbs(). | 3 |
mysql_db_query() |
Non recommandé. Envoyez une requête MySQL. Utilisez mysql_select_db() et mysql_query() à la place. |
3 |
mysql_drop_db() |
Non recommandé. Supprimez (supprimez) une base de données MySQL. Utilisez mysql_query() à la place. |
3 |
mysql_errno() | Retourne le code numérique de l'erreur de la dernière opération MySQL. | 3 |
mysql_error() | Retourne le message d'erreur texte de la dernière opération MySQL. | 3 |
mysql_escape_string() |
Non recommandé. Échappez une chaîne pour mysql_query. Utilisez mysql_real_escape_string() à la place. |
4 |
mysql_fetch_array() | Obtient une ligne du jeu de résultats en tant que tableau associatif, tableau numérique ou les deux. | 3 |
mysql_fetch_assoc() | Obtient une ligne du jeu de résultats comme tableau associatif. | 4 |
mysql_fetch_field() | Obtient les informations de colonne du jeu de résultats et les renvoie sous forme d'objet. | 3 |
mysql_fetch_lengths() | Obtient la longueur du contenu de chaque champ dans le jeu de résultats. | 3 |
mysql_fetch_object() | Obtient une ligne du jeu de résultats comme objet. | 3 |
mysql_fetch_row() | Obtient une ligne du jeu de résultats comme tableau numérique. | 3 |
mysql_field_flags() | Obtient le drapeau associé à la colonne spécifiée dans le résultat. | 3 |
mysql_field_len() | Renvoie la longueur de la colonne spécifiée. | 3 |
mysql_field_name() | Obtenir le nom du champ spécifié dans le résultat. | 3 |
mysql_field_seek() | Définir le pointeur du résultat pour le décalage de champ spécifié. | 3 |
mysql_field_table() | Obtenir le nom de la table où se trouve le champ spécifié. | 3 |
mysql_field_type() | Obtenir le type du champ spécifié dans le jeu de résultats. | 3 |
mysql_free_result() | Libérer la mémoire du résultat. | 3 |
mysql_get_client_info() | Obtenir des informations sur le client MySQL. | 4 |
mysql_get_host_info() | Obtenir des informations sur l'hôte MySQL. | 4 |
mysql_get_proto_info() | Obtenir des informations sur le protocole MySQL. | 4 |
mysql_get_server_info() | Obtenir des informations sur le serveur MySQL. | 4 |
mysql_info() | Obtenir des informations sur la dernière requête. | 4 |
mysql_insert_id() | Obtenir l'ID généré par l'opération INSERT précédente. | 3 |
mysql_list_dbs() | Lister toutes les bases de données sur le serveur MySQL. | 3 |
mysql_list_fields() |
Néanmoins, lister les champs dans les résultats MySQL. Utilisez mysql_query() à la place. |
3 |
mysql_list_processes() | Lister les processus MySQL. | 4 |
mysql_list_tables() |
Néanmoins, lister les tables dans la base de données MySQL. Utilisez mysql_query() à la place. |
3 |
mysql_num_fields() | Obtenir le nombre de champs dans le jeu de résultats. | 3 |
mysql_num_rows() | Obtenir le nombre de lignes dans le jeu de résultats. | 3 |
mysql_pconnect() | Ouvrir une connexion persistante vers le serveur MySQL. | 3 |
mysql_ping() | Ping une connexion au serveur, reconnecter si pas de connexion. | 4 |
mysql_query() | Envoyer une requête MySQL. | 3 |
mysql_real_escape_string() | Échapper aux caractères spéciaux utilisés dans les chaînes de requêtes SQL. | 4 |
mysql_result() | Obtenir les données des résultats. | 3 |
mysql_select_db() | Sélectionner la base de données MySQL. | 3 |
mysql_stat() | Obtenir l'état système actuel. | 4 |
mysql_tablename() | Néanmoins, obtenir le nom de la table. Utilisez mysql_query() à la place. | 3 |
mysql_thread_id() | Retourne l'ID du thread actuel. | 4 |
mysql_unbuffered_query() | Envoyer une requête SQL à MySQL (ne pas obtenir / mettre en cache les résultats). | 4 |
Constantes MySQL PHP
Dans les versions de PHP après PHP 4.3.0, il est permis de spécifier plus de marqueurs clients dans les fonctions mysql_connect() et mysql_pconnect() :
PHP :Indique la version PHP la plus ancienne qui prend en charge cette constante.
Constante | Description | PHP |
---|---|---|
MYSQL_CLIENT_COMPRESS | Utilisation du protocole de communication compressé. | 4.3 |
MYSQL_CLIENT_IGNORE_SPACE | Autorisation de laisser des espaces vides après le nom de la fonction. | 4.3 |
MYSQL_CLIENT_INTERACTIVE | Temps d'inactivité de la session interactive autorisé avant la fermeture de la connexion. | 4.3 |
MYSQL_CLIENT_SSL | Utilisation du chiffrement SSL (disponible uniquement lorsque la version de la bibliothèque client MySQL est 4+). | 4.3 |
La fonction mysql_fetch_array() utilise une constante pour représenter le type du tableau retourné :
Constante | Description | PHP |
---|---|---|
MYSQL_ASSOC | Les colonnes de données retournées utilisent les noms de champs en tant que noms d'indices des tableaux. | |
MYSQL_BOTH | Les colonnes de données retournées utilisent les noms de champs et les indices numériques en tant que noms d'indices des tableaux. | |
MYSQL_NUM |
Les colonnes de données retournées utilisent des indices numériques en tant que noms d'indices des tableaux. Les indices de l'index commencent à 0, ce qui représente le premier champ des résultats retournés. |
- Page précédente PHP Math
- Page suivante PHP MySQLi