笨“新闻栏目”教程问题(Codeigniter “News section” tutorial is

2019-09-22 06:07发布

我与URI的一个问题。 我试图通过邮局一看,却不见回答。

教程可以在这里找到: http://codeigniter.com/user_guide/tutorial/news_section.html

基本上我复制一切,它工作正常,但有一个地方想,我不知道是否是我的浏览器或我错过配置的东西。

在“视图/新闻/ index.php的”我有下面的代码按教程:

<h2><? echo $news_item['title'] ?></h2>
<div id="main">
    <? echo $news_item['text']?>
</div>
<p>[b]<a href="news/<? echo $news_item['slug']?>">View Article</a>[/b]</p>

现在的问题是,当我看着HTML源代码上我的浏览器我看到该链接为:

查看全文

我假设是正确的。 但是,当我点击,它指向我:

本地主机/ CI / index.php文件/新闻/新闻/ firstnews

正如你所看到的“新闻”在URI中重复两次。 它看起来像浏览器仅仅是附加href值的URI,它是开放的,而不是清洗下来到index.php文件,并添加它。

我试图删除从href值“新闻”位和它工作正常。

我使用丁目如果有什么差别。

那是我的misstake? 还是这只是在本教程的错误?

Answer 1:

伊戈尔,我认为,这是一个教程的错误,你需要添加/ href属性。 例如

<a href="/news/<? echo $news_item['slug']?>">View Article</a>

此外,你应该使用的网址助手- http://codeigniter.com/user_guide/helpers/url_helper.html

PS还有就是你不调.htaccess文件的机会。



Answer 2:

为了避免这种错误,我经常使用base_url()写下的链接时。 像这样:

<?php echo anchor(base_url('news/'.$news_item['slug']),View article); ?>

请注意,我用的anchor() base_url()的函数URL帮手 。 在更多信息:

http://codeigniter.com/user_guide/helpers/url_helper.html



Answer 3:

这是CI教程一个错误。


首先,我们建议使用site_url()函数来帮助生成新闻蛞蝓URL。

您可以通过添加为此$this->load->helper('url');__construct()的新闻控制器的控制器/ news.php

然后改变你的网址链接在你的意见/新闻/ index.php<?php echo site_url('news/' . $news_item['slug']); ?> <?php echo site_url('news/' . $news_item['slug']); ?>


最关键的错误是,在整个当前的文件你填充$data['news']而你的其余功能,在看$data['news_item']

你应该改变看法/新闻/ view.php这些(二)变量和(三级)的变量在view()中的控制器/ news.php功能

重新加载页面后,应该这样做! 有关CI论坛充分讨论查看以下链接: http://ellislab.com/forums/viewthread/209349/



Answer 4:

对我来说,我改变

   $data['news'] = $this->news_model->get_news($slug);

至:

   $data['news_item'] = $this->news_model->get_news($slug);

并且工作正常,现在



Answer 5:

顺便说一句,我发现这个混帐回购协议github.com/Crias/tutorial-codeigniter-news其中包含源代码,默认笨教程。

现在,你不需要输入(或复制粘贴),它再次使本教程的作品。



文章来源: Codeigniter “News section” tutorial issue