如何将PHP变量中的值更新为数据库

时间:2014-07-29 11:36:43

标签: php database sql-update

大家。

我在将值更新到数据库时遇到问题。

现在,我将$ SumTotal作为PHP变量。我想通过使用$ SumTotal中的值来更新数据库中的值。

我尝试但它不起作用。数据库中的值为0。

这是我的代码

$strSQL3 = "UPDATE OrderCustomer SET TotalPrice = '".$SumTotal."' WHERE OrderCustomerID = '".$_SESSION["OrderCustomerID"]."' ";

非常感谢。

3 个答案:

答案 0 :(得分:0)

尝试使用此代码,此代码应该适合您。

{
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}

$SumTotal="**Some value**";
//**QUERY**
$strSQL3= "UPDATE OrderCustomer".
       "SET Totalprice= $SumTotal".
       "WHERE emp_id = $emp_id" ;

mysql_select_db('test_db');
$retval = mysql_query( $strSQL3, $conn );
if(! $retval )
{
  die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
mysql_close($conn);
}

答案 1 :(得分:0)

首先,我要确保$SumTotal$_SESSION['OrderCustomerID']等于它们的意思相同。

我会执行以下操作:echo "$SumTotal";echo $_SESSION['OrderCustomerID'];来检查这些变量。

然后,您可以执行以下操作:

  • 确保实际选择数据库 (要在查询中选择数据库,您可以使用UPDATE databasename.table(其中table等于OrderCustomer)
  • 通过在查询末尾添加or die(mysql_error());来检查查询中的错误。
  • 使用PHP文档顶部的以下内容显示已发生的所有错误:https://stackoverflow.com/a/6575502/3593228

除此之外,请确保您的查询实际上正在执行。

您可以使用mysql_query功能执行此操作,如下所示:

$strSQL3 = mysql_query("UPDATE databasename.OrderCustomer SET TotalPrice = '$SumTotal' WHERE OrderCustomerID = '" . $_SESSION["OrderCustomerID"] . "'");

此外,在有人打败我之前,你应该使用PDO或MySQL改进,yada yada yada。

答案 2 :(得分:0)

您可以查看code的这篇文章。

这肯定有用,我亲自尝试过。

修改 :(从链接中拉出)

<html>
<head>
<title>Update a Record in MySQL Database</title>
</head>
<body>

<?php
if(isset($_POST['update']))
{
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}

$emp_id = $_POST['emp_id'];
$emp_salary = $_POST['emp_salary'];

$sql = "UPDATE employee ".
       "SET emp_salary = $emp_salary ".
       "WHERE emp_id = $emp_id" ;

mysql_select_db('test_db');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
mysql_close($conn);
}
else
{
?>
<form method="post" action="<?php $_PHP_SELF ?>">
<table width="400" border="0" cellspacing="1" cellpadding="2">
<tr>
<td width="100">Employee ID</td>
<td><input name="emp_id" type="text" id="emp_id"></td>
</tr>
<tr>
<td width="100">Employee Salary</td>
<td><input name="emp_salary" type="text" id="emp_salary"></td>
</tr>
<tr>
<td width="100"> </td>
<td> </td>
</tr>
<tr>
<td width="100"> </td>
<td>
<input name="update" type="submit" id="update" value="Update">
</td>
</tr>
</table>
</form>
<?php
}
?>
</body>
</html>