Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.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_Codeigniter_Unicode - Fatal编程技术网

Php 为什么可以';我不能在Codeigniter中用汉字读取输入值吗?

Php 为什么可以';我不能在Codeigniter中用汉字读取输入值吗?,php,codeigniter,unicode,Php,Codeigniter,Unicode,我传递一个值,如'測試' 到我的表单,然后我通过执行以下操作返回值: $this->input->post('field_name'); 我发现我回不来了測試' 价值,我什么也得不到 我的版本是2.0.2,$config['charset']='UTF-8' 如果我echo('測試'),没有问题 它使用拉丁字符,打印效果很好。我如何解决这个问题 表格中的代码: 形式 <form target="sc_light_box" action='http://localhost:88

我传递一个值,如'測試' 到我的表单,然后我通过执行以下操作返回值:

$this->input->post('field_name');
我发现我回不来了測試' 价值,我什么也得不到

我的版本是2.0.2,
$config['charset']='UTF-8'

如果我
echo('測試'),没有问题

它使用拉丁字符,打印效果很好。我如何解决这个问题

表格中的代码:

形式

<form target="sc_light_box" action='http://localhost:8888/my_project/index.php/data/add_data.php' method="post">
<textarea id="field_name" name="field_name"/>
<input type="submit" id="submit_button">
</form>
观点:



我终于解决了,你需要
在u post之前,使用javascript encodeURI函数对数据进行编码。

我已通过将配置文件字符集值更新为简单字母解决了此问题

在那之前

$config['charset'] = 'UTF-8';
我把它改成:

$config['charset'] = 'utf-8';

现在它运行良好。

在配置文件中设置字符集,如下所示-

$config['charset'] = 'utf-8';
然后在需要显示/打印/输入unicode文本的页面顶部使用以下标题-

header('Content-Type: text/html; charset=utf-8');

你也可以在你的索引页面中设置这个标题。

你得到了什么?我什么都没有……我的版本是2.0.2,$config['charset']='UTF-8';我只是简单地回显这个值,如果我回显('測試'), 没有问题。如果您尝试使用拉丁字符,它能工作吗?yp,它能工作,并且打印得很好。@Ted,请给我们看一下您的实际代码好吗?您在读取值之前是否对输入运行表单验证?一些字符串操作函数,甚至是PHP本机函数,可能会导致您丢失或更改值。
$config['charset'] = 'utf-8';
header('Content-Type: text/html; charset=utf-8');