如何在php中使用变量更新数据库字段?

时间:2014-08-25 16:45:08

标签: php mysql variables

您好我正在尝试使用php变量更新数据库字段但我收到错误

这是我的代码

update.php

<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'root';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}
$item=11;
$items = implode(",",$_REQUEST['cbox']);


$query=mysql_query('UPDATE form_elemen '.
            'SET interest = "'.mysql_real_escape_string($item).'" '.
            'WHERE id = "'.mysql_real_escape_string($item).'"');
mysql_select_db('helixdemo');
$retval = mysql_query( $query, $conn );
if(! $retval )
{
  die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
echo $items;
mysql_close($conn);
?>

我收到以下错误

Could not update data: Query was empty

我错了,请告诉我

提前致谢

2 个答案:

答案 0 :(得分:0)

mysql_query()立即执行查询字符串,并返回结果句柄。

mysql_query("UPDATE ....");
mysql_query($query);

您从未定义$query。也许你的意思是

$query = "UPDATE ...";
$result = mysql_query($query);

代替。

答案 1 :(得分:0)

强文本你做错了。只需要分配$query=mysql_query。我发现的另一件事是你之后选择数据库请在运行你的mysql_query之前选择它以及为什么在mysql_query中这么复杂。使用mysql_select_db()时需要添加$ conn。使用以下代码

<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'root';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}
mysql_select_db('helixdemo',$conn);
$item=11;
$items = implode(",",$_REQUEST['cbox']);


$query=mysql_query("UPDATE form_elemen SET interest = 'mysql_real_escape_string($item)' WHERE id = 'mysql_real_escape_string($item)'");

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

希望这有助于你