Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果在codeigniter框架中使用重定向,我可以将数据传递给视图吗?_Php_Html_Codeigniter - Fatal编程技术网

Php 如果在codeigniter框架中使用重定向,我可以将数据传递给视图吗?

Php 如果在codeigniter框架中使用重定向,我可以将数据传递给视图吗?,php,html,codeigniter,Php,Html,Codeigniter,我想将数据传递到我重定向访问者的页面。 是否可以或以其他方式在重定向方法中将数据传递给视图 我有一个联系人页面,用户在其中输入一些字段,若表单验证出错,那个么再次将用户重定向到联系人页面,并使用他在联系人表单中输入的数据。当他再次重定向到联系人页面时,我想显示该数据。有什么好的解决办法吗 我使用这个函数 redirect('/contact'); 如果您想使用“Codeigniter Flashdata”概念传递数据。很简单 步骤1:在控制器类加载会话库 $this->load->

我想将数据传递到我重定向访问者的页面。 是否可以或以其他方式在重定向方法中将数据传递给视图

我有一个联系人页面,用户在其中输入一些字段,若表单验证出错,那个么再次将用户重定向到联系人页面,并使用他在联系人表单中输入的数据。当他再次重定向到联系人页面时,我想显示该数据。有什么好的解决办法吗

我使用这个函数

redirect('/contact');

如果您想使用“Codeigniter Flashdata”概念传递数据。很简单

步骤1:在控制器类加载会话库

$this->load->library('session');
第2步:添加闪存数据。

$this->session->set_flashdata('item','Test values');
这里是您的重定向代码。重定向后,如果您想要“Flashdata值”,请使用下面的代码

$this->session->flashdata('item');

打印上述代码,您将获得数据。

有两种可能的方法,您可以在重定向用户时传递值

1。使用会话: 使用会话在重定向时传递数据。CodeIgniter中有一种特殊的方法,称为
set\u flashdata

$this->session->set_flashdata('in',1);
redirect("home/index");
现在您可以像这样进入索引控制器

function index()
{
 $in = $this->session->flashdata('in');
  if($in==1)
  {

  }
}
请记住,此数据仅可用于重定向,并在下一次重定向时丢失 页面请求。如果您需要稳定的数据,那么您可以使用URL 参数&GET
$this->input->GET('param1')

2。使用Get值

因此,在控制器中,您可以有一个功能:

$value=1;
redirect(base_url()."home/index/".$value);
在目标函数中,您可以访问$value值,如下所示:

$value= $this->uri->segment(3);   
if(!is_numeric($value))
{
  redirect();       
}else{
   if($value == 1){

   }
}
我放置
段(3)
,因为在您的示例中,
$value
在两个破折号之后。但是如果你有这样的链接结构:
www.mydomain.com/subdomain/home/index/$value
你就必须使用
段(4)

希望有帮助

你可以这样做


使用CI form validation library获取此M,使用CI validation验证输入数据,但如果验证出错,则我会再次重定向用户以联系pageuse
set\u value
,以将数据保留在表单中
$array = ['name' => 'abc', 'email' => 'abc@gmail.com'];
$this->session->set_flashdata('arrayData', $array);

// You can use in view like this
$array = $this->session->flashdata('arrayData');
echo $msg['name']; // Output : abc