gpt4 book ai didi

php - 从数据库中获取 ID 计数并生成指向新闻的动态链接

转载 作者:行者123 更新时间:2023-11-30 23:21:53 24 4
gpt4 key购买 nike

昨天我问了这个问题:https://stackoverflow.com/questions/15117767/add-dynamic-content-to-otherwise-static-php-page我很抱歉这个不是很精确的问题。我现在自己完成了很多,但我仍然有一些问题。

我设法将我的新闻放入包含以下列的数据库表中:"id", "news_headline", "news_date", "news_teaser", "news_content", "news_external_link"

在我的 news/index.php 上,我现在有以下代码:

<?php
$con=mysqli_connect("localhost", "XXX", "oizQvdjh", "usr_web3_1");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM tbl_news ORDER BY id DESC");

while($row = mysqli_fetch_array($result))
{
echo "<li class='clearfix'>";
echo "<a class='news_pic'><img src='/assets/images/news/news_".$row['id']
."_thumb.jpg'></a>";
echo "<h2 class='info_headline'>" . $row['news_headline'] . "</h2>";
echo "<p class='date'>" . $row['news_date']
. " &ndash; <a href='#disqus_thread'></a></p>";
echo "<p class='news_text'>" . $row['news_teaser']
. "<br><a class='more-link' href='WHERE_TO'>Read more</a></p>";
echo "</li>";
}

mysqli_close($con);
?>

那里的一切看起来都很棒,它从数据库中获取我所有的新闻(到目前为止有五个),并获取我自己上传到服务器上的图像,并根据 id 命名。

单个新闻端具有相同的代码,除了它有一个“WHERE”语句并获取内容文本而不是预告片:

$result = mysqli_query($con,"SELECT * FROM tbl_news WHERE id='1' ORDER BY id DESC");

while($row = mysqli_fetch_array($result))
{
echo "<h2>" . $row['news_headline'] . "</h2>";
echo "<p class='date'>" . $row['news_date']
. " &ndash; <a href='#disqus_thread'></a></p>";
echo "<a class='news_pic'><img src='/assets/images/news/news_".$row['id']."
.jpg'></a>";
echo "<p class='news_text'>" . $row['news_content'] . "</p>";
}

mysqli_close($con);

?>

现在回答我的问题。我如何保存单个新闻的文件以使其动态更新。在我的索引中,href 显示“WHERE TO”,我想要一个类似 <a href="<?php echo $row['news_date'] + slug 的链接(我会在我的表中添加一个列别名)。

然后应生成新闻单 php,并且还应在 URL 中说明日期和 slug。喜欢 XXX/news/2013-02-18_this-is-a-news-site.php我知道为此我还必须将一个变量放入 WHERE 命令中:而不是 WHERE id=1 --> id="自动获取"。我也不知道该放什么。

最佳答案

顺便说一句,你的问题不是很清楚:

您需要启用 mod_rewrite 并选择合适的重写规则。

像这样创建一个 .htaccess 文件:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\?*$ index.php?path=$1 [L,QSA]

像这样的网址

http://your.site.com/news/2012/10/22

将转换为

http://your.site.com/index.php?path=/news/2012/10/22

从查询字符串中获取“路径”并创建您的查询。请务必正确清理输入。

2012/10/22 几乎是一个 mysql 有效日期:只需将 '/' 替换为 '-'。

$dt=str_replace('/','-',substr($path,6));

确保它是一个有效的日期:

$dt=date('Y-m-d',strtotime($dt));

现在您的查询可以是

$query="SELECT * FROM tbl_news WHERE news_date='$dt'";

此查询将为您提供特定日期的所有新闻。

关于php - 从数据库中获取 ID 计数并生成指向新闻的动态链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15137035/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com