我正在使用 Codeigniter 开发一个应用程序。在这个应用程序中,我得到了一个包含用户数据的表单。
如果用户提交的表单只有 A-Z 字符,但如果他使用的是
ä,é,î,ø,ù 等特殊字符,该字段的值不会提交给 Controller !
这个问题让我发疯。我不明白为什么该字段被忽略?相同
如上所述,字段适用于 A-Z 字符。
更新
在配置中我得到: $config['charset'] = 'UTF-8';
我正在发出 POST 请求。
这是我的查看代码:
<?php echo form_open('accounts/save', 'name="theform"'); ?>
<p><?php echo form_input('firstname', null); ?></p>
<p><?php echo form_input('lastname', null); ?>
<div id="button_green">
<a href="javascript: submitform()">Save the data</a>
</div> <!-- End of button_green -->
<?php echo form_close(); ?>
更新 2
在与优秀的@motto 和@slavic 进行了一次长谈之后,它归结为一个错误
使用 PHP 5.3.6(我正在使用)。
有关此错误的更多信息:https://github.com/EllisLab/CodeIgniter/issues/261
这是导致问题的行:
$str = @iconv('UTF-8', 'UTF-8//IGNORE', $str);
线路:89
文件:core/utf8.php
最佳答案
根据这个错误报告:
https://github.com/EllisLab/CodeIgniter/issues/261
您应该将 CI 与不同版本的 php 一起使用。 (尤其不是 5.3.6)
关于codeigniter - 无法在 Codeigniter 中提交特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8909442/