Heim >Backend-Entwicklung >PHP-Tutorial >两个设置分页的都出有关问题,想屎了.

两个设置分页的都出有关问题,想屎了.

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-13 11:55:10788Durchsuche

两个设置分页的都出问题,想屎了...

<br /><?php<br />$offset = isset($_GET['pid'])?intval($_GET['pid']):1;<br />if(!$offset) $offset = 1;<br />$perpage = 50;<br /><br /><br />$db = NEW PDO("mysql:host=localhost; port = 3306; dbname =library", 'root', 'cai123');<br />$total = $db->query('SELECT COUNT(*) FROM library.messages')->fetchColumn(0);<br /><br />$sql = 'SELECT * FROM library.messages'." LIMIT $perpage OFFSET ".($offset-1);<br />$result = $db->query($sql);<br />if ($result)<br />{<br />	foreach ($result->fetchAll() as $row)<br />	{<br />		echo "subject:    ".$row[5]."<br />";<br />	}<br />}<br />else<br />{<br />	$error = $db->errorInfo();<br />	echo "error happened..".$error[2];<br />	exit();<br />}<br /><br />buildIndex($perpage, $total);//1,50,3500<br /><br />/////////////////////////////////////////////////////////////////<br />function buildLink($index, $offset)<br />{<br />	echo "<a href ='". htmlentities($_SERVER['PHP_SELF'])."?pid = $offset'>$index</a>";<br />}<br /><br /><br />function buildIndex($perpage, $total)<br />{<br />	$separator = '|';<br />	//buildLink($offset==1, '<<Prev', '')<br /><br />	for ($start = 1, $end = $perpage; $end < $total; $start += $perpage, $end += $perpage)<br />	{<br />		echo $separator;<br />		buildLink("$start-$end", $start);<br />	}<br /><br />	$end = ($total > $start) ? "$total":"";<br />	echo $separator;<br />	buildLink("$start-$end", $start);<br />}<br /><br /><br /><br /><br />?><br />


另一种思路的.....
<br /><?php<br />$offset = isset($_GET['pid'])?intval($_GET['pid']):1;<br />if(!$offset) $offset = 1;<br />$perpage = 50;<br /><br /><br />$db = NEW PDO("mysql:host=localhost; port = 3306; dbname =library", 'root', 'cai123');<br />$total = $db->query('SELECT COUNT(*) FROM library.messages')->fetchColumn(0);<br /><br />$sql = 'SELECT * FROM library.messages LIMIT '. ($offset -1)*$perpage.", $perpage ";<br />$result = $db->query($sql);<br />if ($result)<br />{<br />	foreach ($result->fetchAll() as $row)<br />	{<br />		echo "subject:    ".$row[5]."<br />";<br />	}<br />}<br />else<br />{<br />	$error = $db->errorInfo();<br />	echo "error happened..".$error[2];<br />	exit();<br />}<br /><br />$numpage = $total%$perpage;<br />if($total%$perpage) $numpage++;<br />$cur = $offset;<br />if ($cur < $numpage)<br />{<br />	echo "<a href ='". htmlentities($_SERVER['PHP_SELF'])."?offset = ".($cur+1)."'> Next Page</a><br />";<br />}<br />if($cur > 0)<br />{<br />	echo "<a href ='". htmlentities($_SERVER['PHP_SELF'])."?offset =". ($cur-1)."'> Prev Page</a><br />";<br /><br />}<br /><br /><br />?><br />


问题如下:每次点击下一页,或者上一页,显示的都是同样的内容,即首页内容。 当数据表的内容有3000行...是怎么回事啊?
------解决方案--------------------
42 行有 ...setPage02.php?offset=$i'>$i....
而第 2 行是 $offset = isset($_GET['ofset']) ? intval($_GET['offset']) : 1;

知道问题在哪了吧?

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn