0% ont trouvé ce document utile (0 vote)
61 vues3 pages

Mysqli Cours1

MySQLi est une extension de PHP permettant d'interagir avec les bases de données MySQL, offrant des améliorations en sécurité et performances. Le document décrit comment établir une connexion à une base de données, exécuter des requêtes SQL, manipuler les résultats, et prévenir les injections SQL. En suivant les bonnes pratiques, les développeurs peuvent créer des applications web sécurisées et performantes.

Transféré par

Fredj Imed
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
61 vues3 pages

Mysqli Cours1

MySQLi est une extension de PHP permettant d'interagir avec les bases de données MySQL, offrant des améliorations en sécurité et performances. Le document décrit comment établir une connexion à une base de données, exécuter des requêtes SQL, manipuler les résultats, et prévenir les injections SQL. En suivant les bonnes pratiques, les développeurs peuvent créer des applications web sécurisées et performantes.

Transféré par

Fredj Imed
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Page 1 : Introduction et Connexion

1. Introduction à MySQLi

MySQLi (MySQL Improved) est une extension de PHP qui permet d'interagir avec les bases
de données MySQL. Elle offre des améliorations par rapport à l'ancienne extension MySQL,
notamment en termes de sécurité et de performances. Le mode procédural de MySQLi utilise
des fonctions pour effectuer les opérations sur la base de données.

2. Prérequis

 Un serveur web avec PHP installé.


 Un serveur MySQL installé et fonctionnel.
 Une base de données MySQL créée.

3. Connexion à la base de données

La fonction mysqli_connect() permet d'établir une connexion avec le serveur MySQL. Elle
prend quatre paramètres :

 Le nom d'hôte du serveur MySQL (souvent "localhost").


 Le nom d'utilisateur de la base de données.
 Le mot de passe de l'utilisateur.
 Le nom de la base de données.

Voici un exemple de code :

PHP
<?php
$servername = "localhost";
$username = "nom_utilisateur";
$password = "mot_de_passe";
$dbname = "nom_base_de_données";

// Créer une connexion


$conn = mysqli_connect($servername, $username, $password, $dbname);

// Vérifier la connexion
if (!$conn) {
die("Connexion échouée : " . mysqli_connect_error());
}
echo "Connexion réussie";
?>

4. Gestion des erreurs

Il est crucial de vérifier si la connexion a réussi. En cas d'échec, la fonction


mysqli_connect_error() renvoie un message d'erreur.

5. Fermeture de la connexion

Une fois les opérations sur la base de données terminées, il est important de fermer la
connexion avec la fonction mysqli_close() :
PHP
<?php
mysqli_close($conn);
?>

Page 2 : Exécution de Requêtes et Manipulation des Données

6. Exécution de requêtes SQL

La fonction mysqli_query() permet d'exécuter des requêtes SQL. Elle prend deux
paramètres :

 La connexion à la base de données.


 La requête SQL à exécuter.

Voici un exemple de requête pour sélectionner des données :

PHP
<?php
$sql = "SELECT id, nom, email FROM utilisateurs";
$result = mysqli_query($conn, $sql);

if (mysqli_num_rows($result) > 0) {
// Afficher les données de chaque ligne
while($row = mysqli_fetch_assoc($result)) {
echo "ID: " . $row["id"]. " - Nom: " . $row["nom"]. " - Email: " .
$row["email"]. "<br>";
}
} else {
echo "0 résultats";
}
?>

7. Manipulation des résultats

 mysqli_num_rows(): Retourne le nombre de lignes dans le résultat.


 mysqli_fetch_assoc(): Récupère une ligne de résultat sous forme de tableau
associatif.
 Il existe d'autres fonctions pour récupérer les résultats, comme mysqli_fetch_row()
(tableau indexé) et mysqli_fetch_array() (tableau associatif et indexé).

8. Insertion, mise à jour et suppression de données

 Pour insérer des données, utilisez la requête INSERT INTO.


 Pour mettre à jour des données, utilisez la requête UPDATE.
 Pour supprimer des données, utilisez la requête DELETE.

Voici un exemple d'insertion de données :

PHP
<?php
$sql = "INSERT INTO utilisateurs (nom, email) VALUES ('John Doe',
'[email protected]')";
if (mysqli_query($conn, $sql)) {
echo "Nouvel enregistrement créé avec succès";
} else {
echo "Erreur : " . $sql . "<br>" . mysqli_error($conn);
}
?>

9. Prévention des injections SQL

Il est essentiel de se protéger contre les injections SQL, qui peuvent compromettre la sécurité
de la base de données. Utilisez la fonction mysqli_real_escape_string() pour échapper
les caractères spéciaux dans les données provenant de l'utilisateur :

PHP
<?php
$nom = mysqli_real_escape_string($conn, $_POST['nom']);
$email = mysqli_real_escape_string($conn, $_POST['email']);
?>

10. Conclusion

MySQLi en mode procédural est une méthode efficace pour interagir avec les bases de
données MySQL en PHP. En suivant ces bonnes pratiques, vous pouvez développer des
applications web sécurisées et performantes.

Vous aimerez peut-être aussi