当我使用类似的代码时,
<input type="hidden" name="foo" value="<?php echo $var;?>" />
$ var显示在我的网页的源代码中。有什么办法可以通过使用PHP / Codeigniter在我的源代码中向用户隐藏该变量?正在为我的项目使用codeigniter。
简而言之,我想做的就是在提交表单时将数据发送到控制器。但不能通过url或隐藏的html输入字段答案 0 :(得分:2)
您可以使用codeigniter的会话库来存储在源代码中不可见的数据。
$this->load->library('session');
或在application/config/autoload.php
中自动加载)$this->session->set_userdata(['your_secret_data_key' => 'your_secret_data_value']);
)$this->session->userdata('your_secret_data_key');
)因此,在生成表单之前,请添加数据,并在将处理表单的控制器中,可以检索以前存储的数据。
有关会话库的更多信息:Codeigniter's session library documentation
答案 1 :(得分:0)
您可以使用加密库对该值进行加密,然后再将其发送到视图,并在检索到该值后再次对其解密。
加载库:$this->load->library('encryption');
您可以在文档中找到有关其配置的更多详细信息。 encryption
$var = 'value';
$var = $this->encryption->encrypt($var);
$this->load->view('view', array('var' => $var));
现在您已经有了一个加密的$var
,您可以做任何事情,并且在检索后就可以使用它:
$var = $this->encryption->decrypt($var);
echo $var; // value