[RESOLU] Problème d'UPDATE avec un textarea

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Problème d'UPDATE avec un textarea

Re: Problème d'UPDATE avec un textarea

par Stu76 » 06 déc. 2021, 11:58

Salut @rthur,

UN tout grand merci pour ton aide, j'avais la tête dans le guidon et je suis passé une bonne dizaine de fois sur l'erreur sans la voir. Encore merci et à bientôt ;-)

Re: Problème d'UPDATE avec un textarea

par @rthur » 06 déc. 2021, 11:36

Active la gestion des erreurs PDO sur WARNING, ça t'aidera pour debuguer (et notamment, différencier les "b" et les "d" ;-) ) :
https://www.php.net/manual/fr/pdo.error-handling.php

Problème d'UPDATE avec un textarea

par Stu76 » 06 déc. 2021, 09:43

Bonjour à tous,

Voilà j'ai un petit souci avec un textarea, j'ai un formulaire avec plusieurs champs dont un textarea, pour insérer dans ma BDD pas de problème pour afficher non plus. Par contre, dès que je veux faire un update ça coince.

Quand je supprime le textarea tout fonctionne, avec ça coince.

Voici mon code :
<form method="post" action="upmess.php">
                <input type="hidden" name="id" value="'.$id.'">
                <div>
                    <h4>Modification d\'un message</h4>
                    <p>Attention !!! N\'oubliez pas d\'enregistrer celui-ci</p>
                    <div class="form-group col-md-3">
                    <label>Corps du message</label>
                    <textarea cols="120" id="area2" name="corps">'.$body.'</textarea>
                    </div>
                </div>
                <div>
                <br>
                <button type="submit" class="btn btn-success">Enregistrer</button>
                <a class="btn btn-primary" href="affmessages.php"><span class="glyphicon glyphicon-arrow-left"></span> Retour</a>
                </div>
                </form>


La partie BDD :
var_dump($_POST); // Il ne retourne rien avec textarea
if(!empty($_POST)){
    $id              = checkInput($_POST["id"]);
    $body        = $_POST["corps"];
    $isSuccess   = true;
    if($isSuccess){
                $db =Database::connect();
                $db->exec("SET CHARACTER SET utf8");
                $stmt = $db->prepare('UPDATE communication SET corps = :body WHERE id = :id');
                $stmt->bindValue(":id",$id,PDO::PARAM_INT);
                $stmt->bindValue(":boby",$body,PDO::PARAM_STR);
                $stmt->execute();
                $stmt->closeCursor();
                header("location: upmess.php");

            }
}
Je n'ai pas mis les "echo" et tout le code HTML afin de simplifier la lecture. Ma page update affiche bien le contenu dans du textarea. Par contre, mon POST est vide quand je l'envoie :cry:

Merci d'avance pour l'attention que vous porterez à mon problème et bonne journée,

Stu