链接到php中分页页面上的项目

链接到php中分页页面上的项目,php,hyperlink,pagination,anchor,Php,Hyperlink,Pagination,Anchor,我是PHP/MySQL的新手。我现在正在开发一个网站,我在这个网站上找到了很多问题的答案-非常好的资源但现在我需要问我自己的一个问题,我正在努力解决这个问题。请容忍我 因此,在我的网站上,我有一个侧面板,显示来自数据库的推荐,并随机抽取1个结果,这样每当用户浏览网站时,显示的推荐都会发生变化。侧面板是一个php包含,显示在整个站点上。我只展示了几行推荐信,然后包括了一个阅读更多的链接 在推荐书页面上,我有13份推荐书,每页1份,13页,因为每份推荐书都很长——这就是客户想要的 我想做的是从“阅读

我是PHP/MySQL的新手。我现在正在开发一个网站,我在这个网站上找到了很多问题的答案-非常好的资源但现在我需要问我自己的一个问题,我正在努力解决这个问题。请容忍我

因此,在我的网站上,我有一个侧面板,显示来自数据库的推荐,并随机抽取1个结果,这样每当用户浏览网站时,显示的推荐都会发生变化。侧面板是一个php包含,显示在整个站点上。我只展示了几行推荐信,然后包括了一个阅读更多的链接

在推荐书页面上,我有13份推荐书,每页1份,13页,因为每份推荐书都很长——这就是客户想要的

我想做的是从“阅读更多”链接链接到相关的推荐-我认为使用html锚是最好的?我发现的问题是,我似乎无法链接到它的分页页面上的相关项目。如果我使用推荐ID,我只能链接到testicials.php的第1页,而不能链接到推荐出现的特定页面。我希望这有意义

我已经在侧面板和推荐页面上附上了我的代码副本

如有任何见解或帮助,将不胜感激

谢谢

Sidebar.php emissionals.php


我不打算讨论您可以对代码所做的所有更改,因为现在它很混乱

您可能在自己的代码中迷失了方向

只需将sidebar.php上的这一行更改为:

<p><a href="testimonials.php?page=<?PHP echo '' . $row["id"] . '';?>"><?PHP echo '' . $row["name"] . '';?></a></p>
类似于您已经在您的essentials.php页面上完成的操作

像这样的东西:

<?php
$gettest = mysql_query ("SELECT * FROM testimonial ORDER BY RAND() LIMIT 1");

while ($row=mysql_fetch_array($gettest)) 
{
$testimonial = $row['testimonial'];
$shorttest = myTruncate($testimonial, 200, " ");
?>

<blockquote><span class="bqstart">&#8220;</span><p><?PHP echo $shorttest;?></p><span class="bqend">&#8221;</span></blockquote>      
<p><a href="testimonials.php?testimonialid=<?PHP echo '' . $row["id"] . '';?>"><?PHP echo '' . $row["name"] . '';?></a></p>
<br clear='all' />

<?PHP
}                           
mysql_close($DB);
?>


我已经删除了大部分分页代码,但这只是为了向您展示如何更简单地实现它。

您能否将页面id设置为“推荐id”?这样的话,testicials.php页面就只显示了该id的证明,您仍然可以在页面上进行分页。谢谢gmadd。有什么建议吗?谢谢Hanan。感谢您的反馈。正如我所说,我不是最好的程序员。想知道您是否可以指出代码的错误以及如何改进代码?谢谢,没关系,我们都是从某个地方开始的。这没有错,但你可以做得更有效。尝试阅读有关类和对象的内容。这将使您的代码不那么拥挤非常感谢哈南。谢谢你,非常感谢你。谢谢你告诉我如何改进它。
<p><a href="testimonials.php?page=<?PHP echo '' . $row["id"] . '';?>"><?PHP echo '' . $row["name"] . '';?></a></p>
<?php
$gettest = mysql_query ("SELECT * FROM testimonial ORDER BY RAND() LIMIT 1");

while ($row=mysql_fetch_array($gettest)) 
{
$testimonial = $row['testimonial'];
$shorttest = myTruncate($testimonial, 200, " ");
?>

<blockquote><span class="bqstart">&#8220;</span><p><?PHP echo $shorttest;?></p><span class="bqend">&#8221;</span></blockquote>      
<p><a href="testimonials.php?testimonialid=<?PHP echo '' . $row["id"] . '';?>"><?PHP echo '' . $row["name"] . '';?></a></p>
<br clear='all' />

<?PHP
}                           
mysql_close($DB);
?>
<?php
include('connectDB.php'); 

$query = "SELECT COUNT(*) as num FROM testimonial";
$total_pages = mysql_fetch_array(mysql_query($query));
$total_pages = $total_pages[num];

$testimonialid = mysql_escape_string($_GET['testimonialid']);  

// Get page data
$query1 = "SELECT * FROM testimonial WHERE id = ".$testimonialid;
$result = mysql_query($query1);

$paginate = '';
if($total_pages > $testimonialid)
{
    $paginate .= '<a href="testimonials.php?testimonialid='.($testimonialid+1).'">next</a>';
}
if($testimonialid > 1)
{
    $paginate .= '<a href="testimonials.php?testimonialid='.($testimonialid-1).'">previous</a>';
}
?>



<?php
echo $paginate;

while($row = mysql_fetch_array($result))
{
    ?>
    <a name="<?PHP echo '' . $row["ID"] . '';?>"></a>

    <blockquote><span class="bqstart">&#8220;</span><p><?PHP echo '' .nl2br($row["testimonial"]) . '';?></p><span class="bqend">&#8221;</span></blockquote> 
    <p class="highlight"><?PHP echo '' . $row["name"] . '';?></p>
    <br clear='all' />

    <?php
}

echo $paginate;

mysql_close($DB);
?>