如何使用php变量更新数据库?

时间:2015-06-21 08:47:13

标签: php mysql sql-update

$Createdby=$_SESSION['adminlog'];
$total =$_POST['total'];
$due =$_POST['due'];
$date =$_POST['issedate'];
$invoiceno =$_POST['invno'];
$CmpnyName =$_POST['CmpnyName'];
$itemdetails =$_POST['item_details'];
$itemname =$_POST['itemname'];
$amtpaid =$_POST['paid'];



$query  = "UPDATE billdata SET Total='$total' Due='$due' WHERE InvoiceNo=$invoiceno";

$result = mysql_query($query);

这是我的代码m用于将html值变为变量并使用新数据更新特定发票号

3 个答案:

答案 0 :(得分:4)

首先,请勿使用已弃用的 RewriteEngine on RewriteBase / RewriteRule ^shoe/([a-zA-Z0-9_-]*)$ shoepage.php?shoe=$1 API 切换到mysql_*PDO,两者都有mysqli,这会使您的代码更加安全SQL-Injections(您的代码非常开放) )。

当查询失败时,prepared statements全局函数将返回最新的mysql错误 获取有关查询失败的信息的最简单方法是在查询执行后添加mysql_error() 代码示例:

or die(mysql_error());

这将报告您的错误并停止执行脚本。

您的sql代码稍有不妥(如RST提到的那样),您在尝试设置的值之间缺少逗号。

使用$result = mysql_query($query) or die(mysql_error()); mysqli,您的代码可能类似于:

prepared statements

答案 1 :(得分:2)

$query  = "UPDATE billdata SET Total='$total', Due='$due' WHERE InvoiceNo=$invoiceno";

值集之间应该有逗号。 使用$_POST()中的值不是一个好主意,更好地执行一些验证检查。

答案 2 :(得分:0)

$ query =“UPDATE billdata SET Total ='$ total',Due ='$ due'WHERE InvoiceNo ='$ invoiceno'”;

这是使用php的mysql查询及其运行良好的测试:)