PDO: données non enregistrées dans la base de données
Posté : 13 juil. 2022, 18:17
Bonjour,
les enregistrements de mon formulaires HTML ne sont pas stockés dans la base de données. La connexion à la base de données se fait pourtant normalement. Voici ci-dessous le code de mon formulaire HTML et celui du programme PHP. Merci pour toute aide.
les enregistrements de mon formulaires HTML ne sont pas stockés dans la base de données. La connexion à la base de données se fait pourtant normalement. Voici ci-dessous le code de mon formulaire HTML et celui du programme PHP. Merci pour toute aide.
Code : Tout sélectionner
<!DOCTYPE html>
<html">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form action="insertion_pdo.php" method="POST">
<p>
<label for="nom">Nom:</label>
<input type="text" name="nom" id="nom">
</p>
<p>
<label for="prenoms">Prenoms:</label>
<input type="text" name="prenoms" id="prenoms">
</p>
<p>
<label for="adresseEmail">Adresse Email:</label>
<input type="text" name="email" id="adresseEmail">
</p>
<input type="submit" value="Soumettre">
</form>
</body>
</html>
Code : Tout sélectionner
<?php
$nomServeur = "localhost";
$nomUtilisateur = "root";
$motDePasse = "";
$nomBaseDeDonnees = "etudiants";
try
{
$conn = new PDO("mysql:host=$nomServeur;nomBaseDeDonnees=$nomBaseDeDonnees", $nomUtilisateur, $motDePasse);
echo "Connection à la base de données effectuée avec succès";
// Mode d'erreur PDO pour gérer les exceptions
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch (PDOException $error)
{
echo 'Connection error: ' . $error->getMessage();
}
// Récupération des données du formulaire HTML
$nom = $_POST['nom'];
$prenoms = $_POST['prenoms'];
$email = $_POST['email'];
// Creation d'une procédure stockée
$maProcedureStockee = $conn->prepare("INSERT INTO etudiants (nom, prenoms, email) VALUES (:nom, :prenoms, :email)");
// Correspondance des paramètres avec l'instruction c'est-à-dire la procédure stockée
$maProcedureStockee->bindParam(':nom', $nom);
$maProcedureStockee->bindParam(':prenoms', $prenoms);
$maProcedureStockee->bindParam(':email', $email);
// Exécution de la procédure stockée
if ($maProcedureStockee->execute())
{
echo "Nouveaux enregistrements enregistrés avec succès!";
}
else
{
echo "Impossible d'ajouter les nouveaux enregistrements";
}
//Fermeture de la connexion
$conn = null;
?>