Problème de validation formulaire

Résolu/Fermé
aureb09 Messages postés 35 Date d'inscription mardi 29 décembre 2015 Statut Membre Dernière intervention 15 juin 2023 - Modifié par aureb09 le 18/08/2016 à 00:19
aureb09 Messages postés 35 Date d'inscription mardi 29 décembre 2015 Statut Membre Dernière intervention 15 juin 2023 - 18 août 2016 à 00:21
Bonjour,

J'ai crée un formulaire pour modifier des données d'une base de donnée. Je rempli les champs du formulaire avec une requette pour récolter les données. Jusque là tout fonctionne. Ensuite, l'utilisateur peut modifier les donnée afficher. Problème, lorsqu'une donnée est modifier ou non et que je valide le formulaire, il ne se passe rien et il n'y a aucune erreur qui s'affiche.
Voici le code du formulaire et du remplissage des champs avec la requette pour récolter les données :

<?php
include('connexion-bdd.php');

$data = $bdd->query("SELECT * FROM table WHERE id = '".$_GET['id']."' ");

while ($donnees = $data->fetch())
{
?>

<form method="POST" action="" enctype="multipart/form-data" >
<input type="hidden" name="id" value="<?php echo $_GET["id"]?>" >
<p>Titre:<br>
<input class="champ" type="text" name="titre" required value="<?php echo $donnees["titre"]?>">
<br><br>
URL Image :<br>
<input class="champ" type="text" name="image" value="<?php echo $donnees["image"]?>" required >
<br><br>
Prix :<br>
<input class="champ" type="text" name="prix" value="<?php echo $donnees["prix"]?>" >
<br><br>
Caractéristiques :<br>
<textarea class="champ" name="caracteristiques"><?php echo $donnees["caracteristiques"]?></textarea><br><br>
>

<input type="submit" name="valider" value="Valider les modifications" class="btn-val">
</p>
</form>
<?php
$data->closeCursor();
}

?>


Le code PHP pour la validation du formulaire :


<?php
include('connexion-bdd.php');

if(isset($_POST['valider']))
{

$req = $bdd->query("UPDATE table SET titre = '".$_POST['titre']."', image= '".$_POST['image']."', prix = '".$_POST['prix']."', caracteristiques= '".$_POST['caracteristiques']." WHERE id = '". $_POST['id']."' ");

if($req) {
header('Location: index.php');
}
}
?>


Merci d'avance pour vos réponses !

1 réponse

aureb09 Messages postés 35 Date d'inscription mardi 29 décembre 2015 Statut Membre Dernière intervention 15 juin 2023 2
18 août 2016 à 00:21
J'ai finalement trouvé le problème : Les apostrophes contenu dans les champs bloqué la requette. Pour y remédier, j'ai utiliser la fonction PHP addslashes() qui ajoute des "\" avant chaque apostrophes.
0