PHP-从web表单更新MySQL表中的每一行
我用数据行填充web表单。有些字段我需要是可更新的,所以我把值放在一个文本字段中。MySQL查询是:PHP-从web表单更新MySQL表中的每一行,php,mysql,sql-update,Php,Mysql,Sql Update,我用数据行填充web表单。有些字段我需要是可更新的,所以我把值放在一个文本字段中。MySQL查询是: SELECT * FROM results WHERE EventID = %s AND CompNo = %s", GetSQLValueString($colname_rsResults, "int"),GetSQLValueString($colname2_rsResults, "int")); EventID和CompNo在URL中传递 假设结果是50行。我希望能够更新名称字段(例如,
SELECT * FROM results WHERE EventID = %s AND CompNo = %s", GetSQLValueString($colname_rsResults, "int"),GetSQLValueString($colname2_rsResults, "int"));
EventID和CompNo在URL中传递
假设结果是50行。我希望能够更新名称字段(例如,更正拼写),单击按钮并让代码使用任何新值更新数据库。大多数值不会更改并不重要,因为这是一个非常罕见的操作
我过去可以在ASP中完成这项工作,但在PHP中似乎做不到
这是我正在使用的代码,我认为它是完全错误的
if ((isset($_POST["JM_update"])) && ($_POST["JM_update"] == "form1")) {
$i = 0;
$j = $totalRows_rsResults;
while($i < $j)
$resultID=$_GET['ResultID'];
$vDelete=$_GET['Del'];
if ($vDelete == 1) {
$delSQL = sprintf("DELETE FROM Results WHERE ResultID=$resultID");
mysql_query($delSQL,$connFeisResults);
} else {
$name=$_GET['Name'];
$qual=$_GET['Qual'];
$updateSQL = sprintf("UPDATE results SET Name = ".$name{$i}.", Qual = ".$qual[$i]." WHERE ResultID=$resultID");
mysql_query($updateSQL, $connFeisResults);
$i++;
}
}
if((isset($_POST[“JM_update”])&($_POST[“JM_update”]=“form1”){
$i=0;
$j=$totalRows\rsResults;
而($i<$j)
$resultID=$_GET['resultID'];
$vDelete=$_GET['Del'];
如果($vDelete==1){
$delSQL=sprintf(“从结果中删除,其中ResultID=$ResultID”);
mysql\u查询($delSQL,$connFeisResults);
}否则{
$name=$_GET['name'];
$qual=$_GET['qual'];
$updateSQL=sprintf(“更新结果集名称=“.$Name{$i}.”,Qual=“.$Qual[$i]”。其中ResultID=$ResultID”);
mysql_查询($updateSQL,$connfiesresults);
$i++;
}
}
每行末尾还有一个复选框,用于检查是否需要删除该记录。那也不行
我正在使用Dreamweaver CS6并尝试调整更新行为等
有什么想法吗?非常感谢。在您的while语句之后,您似乎缺少了一个开头括号 --更新 另外,检查您的sprintf语句——它们看起来是错误的,它们看起来像是在将原始的“$resultID”写入SQL字符串,而不是其中的值
请参见此处的操作方法:虽然
循环中的语句没有被适当的语法包围,但缺少大括号-{}
-或:
和endwhile代码>你好。谢谢我在while之后和$I++末尾添加了大括号。没有进一步的进展…我更新了答案,要求您检查您的sprint声明…如果有帮助,请告诉我。