Bonjour le probleme c'est que je n'arrive pas a inserer une entrée dans ma base de donées depuis un formulaire pourtant je pense avoir un bon code.
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<meta charset="utf-8">
</head>
<body>
<form method="POST" action="">
<input type="text" name="titre" placeholder="Titre"></br>
<input type="text" name="description" placeholder="Description"></br>
<input type="text" name="categorie" placeholder="Catégorie"></br>
<input type="submit" name="OK">
</form>
<?php
if (isset($_POST['id']))
{
$bdd = new PDO("mysql:host=localhost;dbname=test2;charset=utf8", 'root', "");
if (isset($_POST['titre']) AND isset($_POST['description']) AND isset($_POST['categorie']))
{
$requete = $bdd->prepare("INSERT INTO videos(titre, description, categorie) VALUES(?, ?, ?)");
$requete->execute(array($_POST['titre'], $_POST['description'], $_POST['categorie']));
}
}
?>
</body>
</html>
Tu affiches par exemple un message indiquant à l'utilisateur ce qui se passe selon la condition, soit une alerte (erreur) ou une notification (succès).
Bonjour.
Tu as entouré tout ton code PHP de la condition if isset($_POST['id'])
, sauf que tu n'as aucun input dans ton formulaire qui a comme name id
.
Ceci explique celà.
Est-ce que tu es sur que les 3 inputs sont bien rempli au moment de la soumission du formulaire ?
Dans ta condition sur les champs posté, ajoutes un else
en indiquant par exemple qu'il y a un problème dans les données postées par le formulaire et tu devrais également faire une vérification sur la validation de la requête, par exemple :
if ($requete->execute(array($_POST['titre'], $_POST['description'], $_POST['categorie']))) {
// l'enregistrement s'est bien effectué ...
} else {
// une erreur est survenue lors de l'enregistrement ...
}