按照教程后mysql分页错误
问题描述:
我想添加一个简单的分页,但从msql更改为mysqli后,我似乎无法得到它的权利。我不能让我的头靠近它,我只是从它开始。 我按照教程,但仍然会得到错误。按照教程后mysql分页错误
对于我缺乏知识感到遗憾,但我错过了什么?
<?php
$db = new mysqli("host", "username", "password", "mydatabase");
if($db->connect_errno > 0){
die('Unable to connect to database [' . $db->connect_error . ']');
}
$rec_limit = 10;
$sql = "SELECT COUNT(photo)FROM employees";
$retval = mysql_query($sql, $db);
if(! $retval)
{
die('Could not get data: ' . mysql_error());
}
$row = mysql_fetch_array($retval, MYSQL_NUM);
$rec_count = $row[0];
if(isset($_GET{'page'}))
{
$page = $_GET{'page'} + 1;
$offset = $rec_limit * $page ;
}
else
{
$page = 0;
$offset = 0;
}
$left_rec = $rec_count - ($page * $rec_limit);
$sql = "SELECT photo, link".
"FROM employees ".
"LIMIT $offset, $rec_limit";
$retval = mysql_query($sql, $db);
if(! $retval)
{
die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
echo "<br /><br />";
echo '','<img src="/upload/' . $row->photo . '" border=0>';
echo '', $row->link;
if($page > 0)
{
$last = $page - 2;
echo "<a href=\"$_PHP_SELF?page=$last\">Last 10 Records</a> |";
echo "<a href=\"$_PHP_SELF?page=$page\">Next 10 Records</a>";
}
else if($page == 0)
{
echo "<a href=\"$_PHP_SELF?page=$page\">Next 10 Records</a>";
}
else if($left_rec < $rec_limit)
{
$last = $page - 2;
echo "<a href=\"$_PHP_SELF?page=$last\">Last 10 Records</a>";
}
mysql_close($db);
?>
答
您在混合mysqli_*
和mysql_*
函数。
请选择你要使用哪一种样式:(new MySQLi
,ECT)程序的风格(mysqli_connect
,mysqli_query
)或对象样式
不能混合那些2,你不能也混2个不同的库(mysql和mysqli的)
了解更多关于不同风格on PHP.net(例子还展示了如何使用的mysqli)
答
$sql = "SELECT COUNT(photo)FROM employees";
^--- missing a space here
和
$sql = "SELECT photo, link".
^--- missing space here
"FROM employees ".
如果这段代码来自教程,我建议你把它丢掉。你的代码绝对没有错误处理,并且简单地假设一切都成功了。一个正确的书面教程将有适当的错误检测/处理。并且还建议不要考虑mysql _ *()函数,因为它们已被废弃/废弃。
+0
,这个空间没有意义(http://sqlfiddle.com/#!2/b2f8c/3)。 – 2013-03-17 15:10:38
说错误在这里:$ retval = mysql_query($ sql,$ db); – 2013-03-17 14:46:41
可以肯定的是,在定义$ db的行中确实有实际的db值在那里吗? – 2013-03-17 14:48:58
是的,它连接到数据库,我可以回显结果,但试图添加分页即时获取错误 – 2013-03-17 14:59:50