我读到自PHP 5.5.0起不推荐使用mysql_num_rows,将来会被删除。那么什么是最好的替代你的意见?
$KatalogVrstaID = $redak_katalog['KatalogVrstaID'];
$rezultat_podvrsta=mysql_query("SELECT * FROM katalog_podvrsta WHERE KatalogPodvrstaVrsta='$KatalogVrstaID' ORDER BY KatalogPodvrstaID ASC");
if (mysql_num_rows($rezultat_podvrsta)==0){ ?>
答案 0 :(得分:1)
不推荐使用整个mysql函数,它不仅仅是mysql_num_rows
。您应该切换到mysqli或POD数据库库。简而言之,所有mysql_ *函数都已弃用。
您可以阅读有关选择数据库API here的更多信息。
答案 1 :(得分:1)
Mysqli是您应该使用的新库。他们使用相同的函数名称,但是你编写mysqli而不是mysql ..你还需要添加一个参数,即链接。
答案 2 :(得分:1)
自PHP 5.5.0起,不推荐使用mysql扩展。相反,应该使用mysqli或PDO_MySQL扩展 http://at1.php.net/class.mysqli
答案 3 :(得分:1)
唯一的替代方法是完全停止使用mysql_*
,因为不推荐使用整个库。
PDO提供您在结果对象上使用的PDOStatement::rowCount()
,而MySQLi提供mysqli_result::$num_rows
或mysqli_num_rows()
。
答案 4 :(得分:1)
1)使用MySQLi / PDO,就像上面的作者所说的那样。 2)我在一本书中读到,rowCount()对某些语句中的Select语句不是100%可靠的 DBMS,但它们是计算所有行的替代方法
a)使用fetchAll()< - 不建议大结果。 b)在Select-Statement中使用COUNT(*)并使用结果。