<?php
function searchDatabase($key, $value)
{
$key = $key;
$query = "SELECT * FROM user_data WHERE username='$value'";
$result = mysqli_query(loadDatabase(), $query);
$numRows = mysqli_num_rows($result);
if ($numRows > 0)
{
return true;
}
else
{
return false;
}
}
?>
所以我使用此代码搜索我的数据库以显示键/值对上的匹配项,但$key
在传递时未在我的数据库中找到正确的列进入查询功能。如果我用单词username替换它,它匹配正常。这是一个类型问题吗?我没有明确说明它的类型,所以我可以搜索具有相同功能的其他列。
username: varchar(40)
答案 0 :(得分:2)
<?php
function searchDatabase($key, $value)
{
$query = "SELECT * FROM user_data WHERE ".$key." = '".$value."'";
$result = mysqli_query(loadDatabase(), $query);
$numRows = mysqli_num_rows($result);
return ($numRows > 0);
}
?>
答案 1 :(得分:0)
试试这个
$query = "SELECT * FROM user_data WHERE ".$key."='$value'";
答案 2 :(得分:0)
像这样:
function searchDatabase($key, $value)
{
$query = "SELECT * FROM user_data WHERE $key='$value'";
$result = mysqli_query(loadDatabase(), $query);
$numRows = mysqli_num_rows($result);
return ($numRows > 0);
}
答案 3 :(得分:0)
问题出在查询中。 PHP变量未在查询中正确回显。
<?php
function searchDatabase($key, $value)
{
$query = "SELECT * FROM user_data WHERE username='".$value."'";
$result = mysqli_query(loadDatabase(), $query);
$numRows = mysqli_num_rows($result);
return ($numRows > 0);
}
?>