我正在尝试从我的数据库中返回数据。查询将返回零或一。如果数据返回一个(if psv1=1
),我想回复“找到的数据”#39;如果数据返回零(if psv1=0
),我想回显“没有找到数据'。
当我运行我的脚本时,即使psv1=1
,我总是会发现没有找到数据'我还尝试将$res[0] == 1
更改为$res[0] > 0
,但它没有用。
$result = mysqli_query($db_handle, 'SELECT psv1 FROM cus WHERE id="1" AND user_id="'. $_SESSION['user_id'] .'"');
$res = mysqli_fetch_row($result);
if ($res[0] == 1){
echo 'Data found';
}
else
{
echo "No data found";
}
答案 0 :(得分:0)
根据Manual,mysqli_fetch_row()将在失败时返回NULL,否则将对应于作为枚举数组的一行数据的字符串数组。我建议通过大量示例here测试mysqli_query()不会按照手册的建议返回FALSE。因此,更好的测试是编写类似下面的内容,并将$ query设置为特定查询:
<?php
$result = null;
$res = null;
$result = mysqli_query( $db_handle, $query ) OR die( mysqli_error( $db_handle ));
if( ( $res = mysqli_fetch_row( $result )) === NULL ) {
// Nothing to fetch
}
else
{
echo ($res[0] == 1 )? "Data found." : "No data found";
}
答案 1 :(得分:0)
我想知道你在WHERE中是否需要这两个条件。你是否有id和user_id的意思。建议删除:
id="1" AND
只能猜测,但似乎不太可能。
在检查没有返回结果时,我建议您尝试:
$result = mysqli_query($db_handle, 'SELECT psv1 FROM cus WHERE id="1"
AND user_id="'. $_SESSION['user_id'] .'"');
$res = mysqli_fetch_row($result);
if(mysqli_num_rows($result) > 0){
echo 'Data found';
}
else {
echo "No data found";
}
答案 2 :(得分:0)
您应该使用setContentView(R.id.layout_id)
:
mysqli_fetch_array($result, MYSQLI_ASSOC)