PHP MySQL Insertion de données
Utilisation de MySQLi et PDO pour insérer des données dans MySQL
Après avoir créé la base de données et la table, nous pouvons ajouter des données à la table.
Voici quelques règles de syntaxe :
- Les instructions de requête SQL en PHP doivent utiliser des guillemets
- Les valeurs de chaîne dans les instructions de requête SQL doivent être entre guillemets
- Les valeurs numériques n'ont pas besoin de guillemets
- Les valeurs NULL n'ont pas besoin de guillemets
L'instruction INSERT INTO est généralement utilisée pour ajouter de nouveaux enregistrements à une table MySQL :
INSERT INTO table_name (column1, column2, column3,...) VALUES (value1, value2, value3,...)
Pour en savoir plus sur SQL, veuillez consulter notreTutoriel SQL。
Dans les chapitres précédents, nous avons créé la table "MyGuests" avec les champs : "id", "firstname", "lastname", "email" et "reg_date". Maintenant, commençons à remplir la table avec des données.
![]() |
Remarque :Si une colonne est définie sur AUTO_INCREMENT (comme la colonne "id") ou TIMESTAMP (comme la colonne "reg_date"), nous n'avons pas besoin de spécifier une valeur dans la requête SQL ; MySQL ajoutera automatiquement une valeur pour cette colonne. |
|---|
L'exemple suivant ajoute un nouvel enregistrement à la table "MyGuests" :
Exemple (MySQLi - orienté objet)
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
//Créer la connexion
$conn = new mysqli($servername, $username, $password, $dbname);
//Vérifier la connexion
if ($conn->connect_error) {
die("Échec de la connexion :" . $conn->connect_error);
}
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]')";
if ($conn->query($sql) === TRUE) {
echo "Nouvel enregistrement inséré avec succès";
} else {
echo "Erreur : " . $sql . "<br>" . $conn->error;
}
$conn->close();
Exemple (MySQLi - procédural)
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
//Créer la connexion
$conn = mysqli_connect($servername, $username, $password, $dbname);
//Vérifier la connexion
if (!$conn) {
die("Échec de la connexion : " . mysqli_connect_error());
}
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]')";
if (mysqli_query($conn, $sql)) {
echo "Nouvel enregistrement inséré avec succès";
} else {
echo "Erreur : " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($conn);
Exemple (PDO)
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
//Définir le mode d'erreur de PDO pour lever des exceptions
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]')";
//Utilisez exec(), aucun résultat n'est renvoyé
$conn->exec($sql);
echo "Nouvel enregistrement inséré avec succès";
}
catch(PDOException $e)
{
echo $sql . "<br>" . $e->getMessage();
}
$conn = null;
