Bonjour,

J'ai un problème au niveau de mon formulaire : dans celui-ci une liste d'enregistrement est affichée depuis la bdd et quand je clique sur "envoi" le message est bien envoyé avec l'id de l'enregistrement ; mais il n'envoie pas seulement celui modifié mais toute la liste d'enregistrement et donc le message ne vient pas s'ajouter dans la bdd. Je ne comprend pas trop pourquoi.... si quelqu'un a une idée !

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<html>
    <head>
        <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
 
function envoie(formreponse){
 var message = document.formreponse.msg.value;
 var rep = document.formreponse.rep.value;
$.ajax({
        url : "reponseamdin.php", 
        type : "POST", 
        data : "message=" + message + "&rep=" + rep,
        success : function(html){
        $('#conversation').append(html);
        $('#msg').val('');
 
        }
 
    });
}
        </script>
    </head>
 
 
    <body>
 
        <div id="container">
        <h2>Administrateur</h2>
        <h3>Notifications</h3>
            <cite>Les questions rester sans reponses par les utilisateurs</cite>
        <div id="notification">
 
            <?php
        include'../bdd.php';
        $req = $dbh -> query('SELECT * FROM conversation WHERE reponse=""');
        echo"<table><form method='POST' name='formreponse'><tr><th>Question</th><th>Reponse</th><th>ok</th></tr>";
        while ($data = $req -> fetch()){
        $result = $data['question'];
        $rep = $data['id'];
        echo "<tr><input type='hidden' value='$rep' name='rep' id='rep'/><td>$result</td> <td><input type='text' name='msg' id='msg'/></td><td><input type='submit' onclick='envoie();'/></td></tr>";
  }
        echo"</form></table>";
        ?>
        </div>
        <div id="conversation" name="conversation"></div>
 
     </div>
    </body>
</html>
de plus j'envoie les données de mon formulaire grâce à une fonction js et voici ce que j'ai dans ma console :

Nom : message.PNG
Affichages : 189
Taille : 58,2 Ko

ensuite ma page reponseamdin est censé envoyer le message en fonction de l'id dans la bdd

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
 
$message = $_POST['message'];
$rep = $_POST['rep'];
//si le message est vide on affiche la reponse 
 
if (!empty($message)){
 
include'../bdd.php';
$req = $dbh->query("UPDATE `conversation` SET `reponse` = '$message' WHERE id = '$rep' ");
 
}
 
else {
    $reponse = "Le message est vide";
    echo $reponse;
}
?>
mais il affiche "Le message est vide"

CDT