Php 为什么我总是得到;假;当我检查数据库中的值时?
我想检查这个值是否存在于数据库中,但当我运行下面的代码时,我总是得到false。谁能帮帮我吗Php 为什么我总是得到;假;当我检查数据库中的值时?,php,mysql,Php,Mysql,我想检查这个值是否存在于数据库中,但当我运行下面的代码时,我总是得到false。谁能帮帮我吗 $key_in=$key_in_error=”“; 如果($\服务器[“请求\方法”]=“发布”){ 如果(为空(修剪($_POST[“key_in”])){ $key\u in\u error=“请输入作业编号。”; } //}其他{ //$key_in=修剪($_POST[“key_in”]); $key\u in=mysqli\u real\u escape\u string($link,$key
$key_in=$key_in_error=”“;
如果($\服务器[“请求\方法”]=“发布”){
如果(为空(修剪($_POST[“key_in”])){
$key\u in\u error=“请输入作业编号。”;
}
//}其他{
//$key_in=修剪($_POST[“key_in”]);
$key\u in=mysqli\u real\u escape\u string($link,$key\u in);//安全性!
$result=mysqli\u query($link,“从作业号为“$key\u in”的文件中选择*);
if(mysqli_fetch_行($result)){
标题(“location:downloads.php”);
}否则{
回显“无效的作业编号!”;
}
}
试试这个
$key_in = $key_in_error = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty(trim($_POST["key_in"]))) {
$key_in_error = "Please enter job number.";}
// } else {
// $key_in = trim($_POST["key_in"]);
$key_in = mysqli_real_escape_string($link,$key_in); // SECURITY!
$result = mysqli_query($link,"SELECT * FROM files WHERE job_no='$key_in'");
if (mysqli_num_rows($result)>0) {
header("location: downloads.php");
} else {
echo"Not valid job number!";
}
}
您的echo$key_的价值是多少?@ϻᴇᴛᴀʟ$key_in是用户的输入value@KrisRoofe我不知道你的意思是什么?你有没有检查你的
$result
,看看你的查询是否有问题?还有,您是否检查了您的$result
,以查看您的查询是否有任何结果?这对我不起作用。结果仍然是一样的。谢谢@Mukesh Yadav,我已通过取消注释这两行,然后删除安全线来解决问题。