如何在sql查询中插入php变量?我的问题有错吗?
我编写了这个简单的代码来从sql表中删除博客。但这是一个错误如何在sql查询中插入php变量?我的问题有错吗?,php,mysql,sql,variables,Php,Mysql,Sql,Variables,我编写了这个简单的代码来从sql表中删除博客。但这是一个错误 Could not delete data: Unknown column '$qid' in 'where clause' 我不明白为什么$qid是变量,而justqid是列名,它给了我这个错误 <?php $dbhost = 'localhost'; $dbuser = 'root'; $dbpass = ''; $conn = mysql_connect($dbhost, $dbuser, $dbpass); mysql
Could not delete data: Unknown column '$qid' in 'where clause'
我不明白为什么$qid
是变量,而justqid
是列名,它给了我这个错误
<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db('trial1');
if(! $conn )
{
die('Could not connect: ' . mysql_error());
}
function check_login(){
return 12;
}
$return_array = array();
if( check_login()!=NULL){
$qid =1;
$sql='DELETE FROM blog_post WHERE qid = $qid';
$retval = mysql_query($sql, $conn);
if (!$retval){
die('Could not delete data: ' . mysql_error());
$return_array["success"] = 0; //If deletion unsuccessful
echo json_encode($return_array);
}
else{
$return_array["success"]=1; //If deletion successful
echo json_encode($return_array);
}
}
?>
变量将不会在单引号下解析。将SQL查询括在双引号
“
下
$sql=“从`blog\u post`中删除,其中`qid`=$qid”//您应该在sql中用单引号括起您的输入:
$sql="DELETE FROM `blog_post` WHERE `qid` = '$qid'";
首先,您需要确保表中有一个列名qid
然后尝试:
$sql='DELETE FROM blog_post WHERE qid ='.$qid;
Thanx很多。现在正在工作。从来都不知道这很重要。似乎我总是使用双引号,第一次使用单引号,结果发生了:P@user3481478,很高兴它能工作,但请参阅免责声明。您需要切换到新的数据库API。当前,您使用的是一个不推荐使用的API。只需尝试使用$sql='DELETE FROM blog_post WHERE qid=“.$qid.”;
$sql='DELETE FROM blog_post WHERE qid ='.$qid;