Я создаю таблицу, используя результат запроса mysql с флажками и переключателями в каждой строке, например:
while($row4 = mysql_fetch_array($q4)) { $pids = $row4['pid']; echo "<tr>"; echo "<td><input type='checkbox' name='pids[]' class='persistentChecks' style='display:inline-block;cursor:pointer;' value=".$pids."></td>"; echo "<td style='text-align:center;font-size:12px;'>".$counter17."</td>"; echo "<td style='text-align:center;font-size:12px;'>".$row4['cname']."</td>"; echo "<td style='text-align:center;font-size:12px;'>".$semester."</td>"; echo "<td style='font-size:12px;'><input type='radio' value='1'>Expert<input type='radio' value='2'>Normal"; echo "<td style='text-align:center;font-size:12px;'>".$row4['pname']."</td>"; echo "</tr>"; $counter17 = $counter17 + 1; }
Это проблема пакетной обработки. Я хочу отправить значения строк, отмеченных вместе с значком переключателя этой проверенной строки через ajax, на страницу PHP для вставки в MYSQL.
Я знаю, как отправлять только проверенные значения флажка с помощью push
и join
функций JS, но я застрял на пути отправки связанных значений переключателей проверенных строк.
JS, который я использую:
data = []; for (i = 0; i < elements.length; i++){ if (elements[i].checked){ data.push('pids[]='+encodeURIComponent(elements[i].value)); } } params= "teacher="+encodeURIComponent(teacher)+"&course="+encodeURIComponent(course)+"&semester="+encodeURIComponent(semester)+"&flag="+encodeURIComponent(1)+"&"+data.join('&'); if (window.XMLHttpRequest) { xmlhttp=new XMLHttpRequest(); } else { xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { result = xmlhttp.responseText; alert(result); } } xmlhttp.open("POST","tpaper.php",true); xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xmlhttp.send(params);
Теперь на странице PHP я просматриваю сообщения, отправленные через JS выше, используя цикл foreach.
Как я должен отправлять значения переключателей для отмеченных флажков? Нужно ли мне запускать вложенную петлю в JS, а затем в PHP foreach
?
Пожалуйста помоги…