mysqli_查询在php中给出空结果
我试图查询数据库,但是mysqli_query($dbc,$query)总是返回mysqli_查询在php中给出空结果,php,mysql,Php,Mysql,我试图查询数据库,但是mysqli_query($dbc,$query)总是返回{“当前_字段”:null,“字段计数”:null,“长度”:null,“num_行”:null,“类型”:null} 我在代码中没有任何var_转储 $dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); if (mysqli_connect_errno()){ trigger_error ('Could not connect to
{“当前_字段”:null,“字段计数”:null,“长度”:null,“num_行”:null,“类型”:null}
我在代码中没有任何var_转储
$dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
if (mysqli_connect_errno()){
trigger_error ('Could not connect to MySql: ' . mysqli_connect_error());
echo "it had an error";
} else {
mysqli_set_charset($dbc, 'utf8');
echo "it connected";
}
这呼应了“it连接”
除非您在全局范围内声明
$number
。你应该把它交上来:
function getGames($dbc, $number) {
// ...
此外,您还可以输出正在运行的确切的SQL
,以便在phpMyAdmin中对其进行测试(并验证$number
是否正确地传递给了您的函数):
最后,不返回SELECT
语句中的行数。请尝试:
我刚刚将您的mysqli_受影响的行($dbc)更改为mysqli_num_行($result),并为我工作。 mysqli_impacted_rows($dbc)返回受上次插入、更新、替换或删除查询影响的行数 函数getGames($dbc){
$query=“从min_玩家所在的游戏中选择*”。$number。“;”
$result=mysqli_query($dbc,$query)或trigger_error(“query:$query\n
MySQL error:“.mysqli_error($dbc))
}我不知道
$number
从何而来…这是一个web服务,我之前通过$u POST值获得它,实际上整个查询的构建方式与这里不同,但我没有发布所有内容,因为这是有效的(通过echo检查)那么,您对该查询结果尝试过mysqli\u fetch\u assoc
,它与mysqli\u fetch\u assoc一起工作。。我刚刚意识到,我没有获取我的mysqli\u结果
object谢谢你的回答。事实上,我没有使用正确的方法来处理数据,也没有在任何地方获取结果。
$result = getGames($dbc);
echo json_encode($result);
function getGames($dbc, $number) {
// ...
echo $query;
$sql = sprintf('Your SELECT statement with %d number', $number);
echo $sql; // To visually verify the SQL is valid
$query = mysqli_query($dbc, $sql);
if (false !== $query) {
return mysqli_num_rows($query);
} else {
return mysqli_error($dbc);
}
if(mysqli_num_rows($result)) {
return $result;
} else {
return "no affected rows";
}