基本上,我想用从javascript转换为php的数组中的值更新数据库然后当按下按钮时,它会更新数据库我有这个代码,但它没有更新到数据库
var v = document.getElementsByName('mark[]');
var arr = new Array();
for(var a=0; a<v.length; a++){
arr[a]=inputs[a].value;
}
var str;
for(var i=0; i<arr.length; i++) {
str+='&array_items[]='+arr[i];
}
document.location.href='./markandfeedback.php?'+str;
}
</script>";
for ($i=0; $i<count($_GET['array_items']); $i++){
$arr[] = $_GET['array_items'][$i];
}
if(isset($_POST['update'])){
$sql1="UPDATE `groupdatabase1` .`questions` SET `mark`= '".$arr[1]."',`studentID`= '4140001', `feedback` = 'meh' WHERE `questions`.`questionID`=1";
mysql_query($sql);
}
您将查询分配给名为$sql1
的变量,但在对mysql_query
的调用中使用了一个不同的(可能未初始化的变量)$sql
。
如果不是发送POST
请求,而是发送GET
,那么$_POST['update']
将永远不存在。除此之外,我不确定为什么脚本标记后面有"
。。。除非你省略了代码,而代码实际上是在php中编写的,否则没有理由这样做。
通常你会使用AJAX,否则你会使用表单…即使你仍然运行JS并将结果放在一组隐藏字段中,这样就没有真正的表单接口了。