2013-08-28 58 views
0

我无法更新相应的编辑项目。只有第一个问题和答案正在更新。我不能得到我想要的结果。我坚持了一天。请帮帮我。php mysql中的嵌套循环

继承人场景:我有一个包含表单的php文件,并将它传递给另一个php文件。一个包含问题ID和文本框的复选框,允许他们从数据库编辑他们的问题。每个问题都有相应的答案。另外,他们可以编辑它们。如果他们点击更新按钮,所有选中的问题都应该更新。但并非所有这些都会更新。从字面上看,只有第一个问题是唯一可以更新的项目。任何人都知道我的代码有什么问题?

继承人的链接截图http://imageshack.us/photo/my-images/706/cetw.png/

继承人我的代码:

$selected = $_POST['selected'];///the checkbox 
$question = $_POST['questiondesc']; 


for ($i = 0; $i < sizeof($selected); $i++) 
{ 
    $sql = sprintf("UPDATE exam_questions SET question_description = '%s' WHERE question_id = '%s'", 
      mysql_real_escape_string($question[$i]), 
      mysql_real_escape_string($selected[$i])); 
    mysql_query($sql)or die(mysql_error()); 

    $eren = mysql_query("SELECT * FROM exam_answers WHERE answer_question_set_id = '".$selected[$i]."'")or die(mysql_error()); 
    while($mikasa = mysql_fetch_array($eren)){} 
    $count = mysql_num_rows($eren); 

     $answer = $_POST['answerdesc']; 
     $answerid = $_POST['ansid'];///answer id 



      for($e = 0; $e<$count; $e++){ 

      $gomugomu = sprintf("UPDATE exam_answers SET answer_description = '%s' WHERE answer_id = '%s'", 
      mysql_real_escape_string($answer[$e]), 
      mysql_real_escape_string($answerid[$e])); 
      mysql_query($gomugomu)or die(mysql_error()); 
     } 

回答

0

这是一个有点混乱,没有你的网页或东西的PRINTSCREEN理解,但它听起来就像你有一个页面,允许同时选择多个复选框,但您只保留$_POST中单个checbox的参考。

如果是这样,您应该通过数组发送问题的ID。请看看这个接受的答案,看看如何做到这一点:PHP $_POST get data array

+0

我已经做到了我的HTML代码。这里是我的屏幕截图http://imageshack.us/photo/my-images/706/cetw.png/ –