【问题标题】:How can I add a 'read more' button below each article?如何在每篇文章下方添加“阅读更多”按钮?
【发布时间】:2012-01-05 19:33:30
【问题描述】:

我在大学做一个项目,使用 MySQL 和 PHP。这是我从数据库中获取数据的代码:

$sql="INSERT INTO articles (artical,article_heding,date,categories ) VALUES ('$artical','$heading','$datetime','$categories')";
mysql_query($sql,$con);

$sql3="select * from articles";
$rs2=mysql_query($sql3);
while($row2=mysql_fetch_array($rs2))
{
$rating=$row2['article_heding'];
$artical=$row2['artical'];

echo $row2['article_heding']."<br>".substr($row2['artical'], 0,10)."<br><br>";}}

目前我只是显示每篇文章的摘要(substr($row2['artical'], 0,10)),但我想在每篇文章下方放置一个阅读更多按钮以显示全文。我该怎么做?

【问题讨论】:

  • 听起来您需要 Javascript 来执行此操作。当用户点击“阅读更多”时,您是否希望将文本展开为完整版?
  • @Brendan Bullen 是的!我需要将此扩展为完整版!你能帮忙吗?

标签: php mysql


【解决方案1】:

我刚刚写了一个fiddle 来说明这一点,这很奇怪。它确实使用了 jQuery,但这很容易包含在内。

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>

也欢迎您使用“$”命令而不是“jQuery”。由于与您的情况无关的特定要求(可能),我使用“jQuery”编写了它。

如果用户禁用了 javascript,我的示例中的“更多”文本也不会始终被隐藏。要解决此问题,请删除 .css 并添加:

jQuery(document).ready(function(){
  jQuery("#more").hide();
});

【讨论】:

    【解决方案2】:

    据我所知(因为这是在客户端处理的(您不想重新加载页面吗?))您必须使用 javascript 来执行此操作,因为 php 是纯基于服务器的

    【讨论】:

    • thz... 我如何使用 java 来做到这一点?我将此页面保存为 ***.php 可以这样做吗?我需要重新加载它!我可以吗?
    【解决方案3】:

    当您不想重新加载页面时,您肯定需要 JavaScript,尤其是 JS 框架。

    您可以使用 jQueryPlugin 实现以下目标:jQuery Expander Plugin

    这里:Quick and Easy jQuery Read More Script Tutorial

    另外,其他人已经问过类似的问题:Read More Feature with JQuery slideToggle Method

    【讨论】:

      【解决方案4】:

      终于找到答案了!!这里是:首先我在下一个回显行中添加这些行:

      echo "<form action='welcome.php' method='get'>
             <input name='".$articalid."' type='submit' value='Read More' />
             <input name='buttonId' type='hidden' value='".$articalid."' />
             <input name='buttonIdd' type='hidden' value='".$rating."' />
            </form>";
      

      之后我把“welcome.php”文件变成了这样:

      $artical=$_REQUEST['buttonId'];
      $heading=$_REQUEST['buttonIdd'];    
      echo $heading."</br></br>";
      
      $strSQL = "SELECT * FROM articles where id='$artical'";  
      $rs = mysql_query($strSQL); 
      
      while($row=mysql_fetch_array($rs))
      {
      echo $row['artical'];
      }
      

      完成!!!好用!!!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-09-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-09-26
        • 2017-09-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多