Bonjour à tous,
Je réalise un formulaire actuellement et j'ai un champ type TEXTAREA que je souhaite envoyer en MAJ sur une BDD dès que la souris quitte le champ HTML.
Mon seul et unique dernier problème depuis deux jours, est que je n'arrive pas à récupérer ma variable qui m'indiquera si ma requête a bien été réalisée.
La partie XMLHTTPRequest
La partie
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 /** FONCTION POUR METTRE A JOUR LES VALEURS DES TEXTAREA EN XMLHHTPRequest **/ function updateValueTextarea(textarea) { goLoader(); // On affiche la roue de chargement var xhr = getXhr() var url = '../modules/actions/action_XMLHTTPRequest.php'; var params = 'id='+textarea.id+'&textarea='+textarea.value+''; xhr.open('POST', url, true); xhr.onreadystatechange = function() {//Call a function when the state changes. if(xhr.readyState == 4 && xhr.status == 200) { console.log(this.response); var res = this.response; if (res.success == 1) { alert(res.success); outLoader(); // On enlève la roue de chargement car la requête est réalisée } } else { alert(res.success); } } //Send the proper header information along with the request xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); xhr.send(params); return false;}
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 // Si "Textarea" n'est pas vide alors if(!empty($_POST['textarea'])) { $success = 1; $res = ["success" => $success, "textarea" => $_POST['textarea']]; echo json_encode($res); } else { $success = 0; $res = ["success" => $success]; }
Le retour dans la console :
<br />
<font size='1'><table class='xdebug-error xe-notice' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
<tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Notice: Undefined index: typeInput in D:\wamp64\www\pcs\modules\actions\action_XMLHTTPRequest.php on line <i>19</i></th></tr>
<tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>
<tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>
<tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0002</td><td bgcolor='#eeeeec' align='right'>366216</td><td bgcolor='#eeeeec'>{main}( )</td><td title='D:\wamp64\www\pcs\modules\actions\action_XMLHTTPRequest.php' bgcolor='#eeeeec'>...\action_XMLHTTPRequest.php<b>:</b>0</td></tr>
</table></font>
{"success":1,"textarea":"cghjk"}
J'ai donc bien mon retour dans la console ... mais je n'arrive pas à récupérer ma valeur "success" pour vérifier dans le futur l'état du traitement de ma requête.
Merci par avance pour la personne qui prendra le temps de répondre à ma question![]()
Partager