function getXMLHttpRequest() { var request = false; try { request = new XMLHttpRequest(); } catch(err1) { try { request = new ActiveXObject('Msxml2.XMLHTTP'); } catch(err2) { try { request = new ActiveXObject('Microsoft.XMLHTTP'); } catch(err3) { request = false; } } } return request; } var p=new getXMLHttpRequest(); function processResponse(id) { if (p.readyState == 4) { if (p.status == 200) { var div='question-' + id; document.getElementById(div).style.display='block'; document.getElementById(div).innerHTML=p.responseText; }; }; } function sendAnswer(id) { var name='question-' + id; var form=document.getElementById(name); var ans='questionAns-' + id; var answer=form.ans.value; p.open('GET','sendAnswer.php?id=' + id + '&ans=' + answer,true); p.onreadystatechange = processResponse(id); p.send(null); }
Plik senAnswer.php jest na 100% sprawny. Wiem, że to wina JS, tylko nie potrafię znaleźć błędu.
Dodam jeszcze fragment, w którym są formularze.
<table border="0"> <tr> <td style="width: 400px;">Pytanie: <b>' . $row['question'] . '</b></td> <td><input checked="checked" type="radio" name="questionAns-' . $row['id'] . '" value="0"> <label>Nie</label> <input type="radio" name="questionAns-' . $row['id'] . '" value="1"> <label>Tak</label> <input type="radio" name="questionAns-' . $row['id'] . '" value="0"> <label>Nie wiem</label></td> <td><input type="button" value="Wyślij >>" onclick="sendAnswer(' . $row['id'] . ')" /></td> </tr> </table> </div>'; }
Z góry dziękuję za pomoc.