我有一个查询,它是检查来自两个不同表的数据,但一切正常。当我在cPanel中粘贴查询时,结果显示如下
MySQL returned an empty result set (i.e. zero rows). (Query took 0.0005 sec)
但是当我在php中计算查询时,它正在退回1而不是0不知道为什么 这是我的Sql查询
SELECT mobile, emailid
FROM tbl_users
WHERE mobile =9653878051
AND emailid = 'rawat@gmail.com'
GROUP BY mobile
UNION ALL SELECT mobile, email
FROM tbl_addusr
WHERE mobile =9653878051
AND email = 'rawat@gmail
.com'
LIMIT 0 , 30
我正在计算它,我将sql结果存储在数据变量
中 $result = mysql_num_rows($data);
echo count($result)>0?1:0;
,结果是1而不是0
答案 0 :(得分:1)
你不需要计算任何东西。 <script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script type="text/javascript">
$(function() {
$('#calendar').datepicker({
inline: true,
showOtherMonths: true,
firstDay: 1,
dayNamesMin: ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'],
});
});
</script>
<div id="calendar"></div>
为您提供行数。
像这样使用:
mysql_num_rows
答案 1 :(得分:0)
mysql_num_rows - 获取结果不是数组
中的行数<强>描述强>
int mysql_num_rows(resource $ result) 从结果集中检索行数。此命令仅对返回实际结果集的SELECT或SHOW等语句有效。要检索受INSERT,UPDATE,REPLACE或DELETE查询影响的行数,请使用mysql_affected_rows()。
<强>参数强>
结果 正在评估的结果资源。这个结果来自对mysql_query()的调用。
返回值
成功时结果集中的行数,或者失败时为FALSE。
<?php
$link = mysql_connect("localhost", "mysql_user", "mysql_password");
mysql_select_db("database", $link);
$result = mysql_query(" SELECT mobile, emailid
FROM tbl_users
WHERE mobile =9653878051
AND emailid = 'rawat@gmail.com'
GROUP BY mobile
UNION ALL SELECT mobile, email
FROM tbl_addusr
WHERE mobile =9653878051
AND email = 'rawat@gmail
.com'
LIMIT 0 , 30", $link);
$num_rows = mysql_num_rows($result);
echo "$num_rows Rows\n";
echo $num_rows>0?1:0;//compare like this
?>
检查文档http://php.net/manual/en/function.mysql-num-rows.php和http://php.net/manual/en/function.count.php
答案 2 :(得分:0)
1:停止使用mysql_ *函数。请改用mysqli或PDO。
2:使用SQL Count:http://www.w3schools.com/sql/sql_func_count.asp
哦,是的,就像建议一样:不要使用像$ aaaaaa这样的变量名...这样的名字只是对变量是什么一无所知,当你在几个月内重新打开项目时,你赢了#39了解你所做的一切。
答案 3 :(得分:0)
您正在使用PHP的count()
功能,该功能来自手册:
返回array_or_countable中的元素数。如果参数不是数组或不是具有已实现Countable接口的对象,则将返回1。有一个例外,如果array_or_countable为NULL,则返回0。
因此,根据您的情况,它将返回1.只需删除 count()
函数,并在您的三元运算符中比较$result
本身的值。