首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Codeigniter中,如何将视图文件写入视图文件?

在Codeigniter中,如何将视图文件写入视图文件?
EN

Stack Overflow用户
提问于 2013-07-16 02:34:31
回答 4查看 3.2K关注 0票数 0

我有一个thank_you.php文件,其中只包含字符串“谢谢”。格式化为成功/绿色。

我想在网站的一个特定区域显示这个文本,但不确定如何去做。在我的主视图文件中,我添加了下面这行:

代码语言:javascript
复制
<?php $this->template->add_region('success'); ?>

在“提交”按钮旁边。

在我的控制器中,我有一个函数,一旦被调用,就应该显示视图文件"thank_you.php“。

代码语言:javascript
复制
function greeter_thank_you() {
$this->template->write_view('success', 'thank_you.php');
}

我有标准的$alert、$content、$main等。区域,但是如何将这个视图文件回显到另一个视图文件中呢?有没有其他方法可以让我这样做呢?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-07-16 05:53:51

您似乎正在使用Collin Williams' CI Template library

据我所知,您不能在一个区域中定义另一个区域,因此最好将内部区域(您称之为success)的值发送到main区域中。

  • 如果使用$this->template->write();方法将内容写入main区域:

使用$this->load->view('thank_you', '', TRUE);获取thank_you视图文件的内容,并将其放置在write()的第二个参数内。

如果您使用的是$this->template->write_view()方法,请使用

使用以下内容:

代码语言:javascript
复制
$data = array(
    'foo'     => 'bar',
    'baz'     => 'qux',
    'success' => $this->load->view('thank_you', '', TRUE)
);

$this->template->write_view('main', 'main_region_view_file_here', $data/*, TRUE*/);

并在main地域的视图文件中添加以下内容:

代码语言:javascript
复制
if (! empty($success)) {
    echo $success;
}

我没有任何使用Collin Williams的模板库的经验,但我认为这可能会有用。

顺便说一下,如果你有什么问题,我洗耳恭听!

票数 1
EN

Stack Overflow用户

发布于 2013-07-16 03:31:27

如果要将一个视图文件加载到另一个视图文件中。

只需输入

代码语言:javascript
复制
$this->load->view('FolderPath/FileNameHere');

我希望它能解决你的问题。

编辑:

或者在对Button执行某些操作后,要加载另一个视图。您可以将按钮重定向到该控制器。在那里你可以写上一行。

如果它是一个锚定按钮,只需将<a class="BtnClass" href="ControllerPathHere">Submit</a>

如果您使用的是模板库,请详细介绍。

票数 0
EN

Stack Overflow用户

发布于 2013-07-16 04:30:23

在控制器中,您希望将视图输出缓冲到一个变量,并将变量传递给模板。view方法中的第三个参数允许您将视图输出作为字符串返回。

代码语言:javascript
复制
$viewData = array(
    'main' => $this->load->view('thank_you.php', '', true)
);

$this->load->view('template.php', $viewData);

// access the main template data with $main in template.php

请参阅此页面的底部:http://ellislab.com/codeigniter/user-guide/general/views.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17661371

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档