gpt4 book ai didi

当数据库中不存在记录时PHP怎么办

转载 作者:行者123 更新时间:2023-12-01 00:05:55 26 4
gpt4 key购买 nike

我在数据库中查询与 url 段 www.site.com/post/24 中传递的 id 匹配的单个记录。

假设帖子 24 不存在。什么是处理未找到的数据库请求的安全且seo 兼容方法?

以下是我目前使用 Codeigniter 模型的解决方案:

    function read_post($post_id) //argument is the value of the url segment
{
$user_id = $this->tank_auth->get_user_id();

$this->db->where('user_id', $user_id);
$this->db->where('post_id', $post_id);
$this->db->limit(1);
$query = $this->db->get('posts');

//check if record exists
if ($query->num_rows() > 0) //row is returned
{
return $query->row(); //passed to controller and view
}
else
{
show_404(); //generate 404 message
return FALSE; //------------------------or exit()?
}
}

请分享您自己的最佳方法/意见。

最佳答案

显示 404 页面(带有 404 HTTP 状态代码)。这是正确的做法。否则你会假装你有无数个没有内容的页面。

在 404 页面上简短描述该内容已不存在。然后您可以在您的网页上添加指向其他流行内容的链接。为了用户着想,鼓励他们尝试引导他们 404 页面到有趣的内容,但是要使用链接来做到这一点,以便用户可以阅读 404 消息和选择下一步要做什么。

如果您有有意义的包含单词的 URL,您也可以提取单词并在您的数据库中进行某种搜索。在 404 页面上也列出搜索结果,在诸如“您可能对...感兴趣”之类的标题下。如果您要销售产品或服务,请不要犹豫,将 404 页面变成一个不错的销售页面!

我坚信最好的 SEO 是最适合您的访问者的。这一切都是为了将他们留在您的网站上,而不是吓跑他们。使您的网站尽可能对用户友好,并使您可以轻松找到所有有趣的内容。我上面的回答直接源于这种信念。根据标准(在本例中为 HTTP 标准)做正确的事,同时尝试用优质的内容和服务吸引用户。这对于贵公司的整体销售来说无疑也是最好的。

关于当数据库中不存在记录时PHP怎么办,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11129566/

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