-1

我正在做新闻网站并像这样从数据库中获取新闻

<div class="left-content nine-column" style="font-size:13px; line-height:25px; font-family:open sans;">
    <?php
        $qry = "Select * from  tbl_news";
        $result = null;
            if(!$result = mysqli_query($con,$qry)) 
                Die("Error in database");
            else
            {
                if(mysqli_num_rows($result) >= 1)
                {
                    while(($rec = mysqli_fetch_assoc($result)) != null) 
                    {
                        echo '<div class="post">
                        <h1>'. $rec['news_heading'] .'</h1>
                        <ul class="post-meta">
                        <li><a href="" title=""><i class="icon-calendar-empty"></i><span>'. $rec['news_date'] .'</span></a></li>
                        <li><a href="" title=""><i class="icon-user"></i>By'.$rec['postedby'].'/a></li>
                        <li><a href="" title=""><i class="icon-map-marker"></i>'.$rec['news_location'].'</a></li>
                        </ul>
                        <div class="post-desc">
                        <p>'.$rec['news_ldesc'].'                                     

                        <!-- here i want read more link -->
                        </p>                        
                        <br/>
                        </div>
                        </div> '; 

                    }
                }
            }           

            ?>
        </div>

现在我想做的是我想阅读更多关于他们重定向到的每个新闻项目的链接,news_details.php并且那个单一的新闻将在那里显示,我如何得到它,请帮助我

4

4 回答 4

2

首先,您需要构建 news_detail.php,以处理单个帖子查看。在那里,你需要决定要带来哪些新闻细节,通常人们用 id 来做。然后,您需要从您的链接中传递 id,例如href='news_details.php?id=your_id_here'

于 2013-11-12T08:50:15.863 回答
1

您应该在数据库中有新闻 id。当您检索所有新闻并循环打印时,您应该使用以下代码。我不知道数据库中新闻 id 列名的名称是什么

echo '<a href="news_details.php?id='.$rec['news_id'].' ">Read More</a>'; // news_id should be matched with database column name

现在你应该为新闻细节编写代码。您应该使用 get 方法从数据库中查询接收新闻 id 并打印到循环中。

更新:在 news_details.php 中,您应该通过 GET 方法接收新闻 id 的值$_GET["id"],然后编写代码获取数据库表的行。IE

$newsId = $_GET["id"];
$qry = "Select * from  tbl_news where id = $newsId ";

$result = mysqli_query($con,$qry);

while($row = mysqli_fetch_array($result))
{
  echo $row['news_ldesc'] ;
}

尝试这个。

于 2013-11-12T08:59:30.233 回答
0

您可以为特定新闻设置单独的链接,例如

href='news_description.php?id='.base64_encode($id)
于 2013-11-12T09:00:08.503 回答
0

使用以下步骤:

1)您可以使用php substr将您的新闻内容截断为多个单词。然后在其下方添加阅读更多链接。

您的代码将如下所示:

<div class="left-content nine-column" style="font-size:13px; line-height:25px; font-family:open sans;">
         <?php
            $qry = "Select * from  tbl_news";
            $result = null;
            if(!$result = mysqli_query($con,$qry)) 
            Die("Error in database");
            else
            {
            if(mysqli_num_rows($result) >= 1)
            {
            while(($rec = mysqli_fetch_assoc($result)) != null) 
            {
            echo '<div class="post">
            <h1>'. $rec['news_heading'] .'</h1>
            <ul class="post-meta">
            <li><a href="" title=""><i class="icon-calendar-empty"></i><span>'. $rec['news_date'] .'</span></a></li>
            <li><a href="" title=""><i class="icon-user"></i>By'.$rec['postedby'].'/a></li>
                                            <li><a href="" title=""><i class="icon-map-marker"></i>'.$rec['news_location'].'</a></li>
         </ul>
        <div class="post-desc">
        <p>'.substr($rec['news_ldesc'], 0, 100).'                                     

           <!-- here i want read more link -->
            </p>                        
        <br/>
        </div>
        </div> '; 

                        }

                    }
                }           

            ?>
        </div>

如果你看到了,我已经使用substr($rec['news_ldesc'], 0 , 100)了将你的新闻内容截断到 100 个单词的方法。0 开始,100 结束。

2)使用 Kuzgun 的答案

另请阅读:

如何将字符串截断为 PHP 中的前 20 个单词?

于 2013-11-12T09:03:59.467 回答