我对codeigniter
form_open
函数有一个奇怪的问题。
当我传递此代码时:
<?php echo form_open('login/check');?>
它实际打印出来
<form action="http://***.***.***.***/***/index.php/login" method="post" accept-charset="<meta charset="utf-8">">
错误正好在表单打开标记的末尾。位于accept-charset
属性的位置。除了我不需要accept-charset
属性的事实,因为我已经在头部声明了元素,它以错误的格式打印它!
accept-charset="<meta charset="utf-8">">
此代码在页面上输出表格和双引号以及角度关闭。
">
真正的问题不是accept-charset
属性本身,而是错误的打印。而不是accept-charset="utf-8"
它会引入charset的元标记
发生了什么事?我想不出来...... 谢谢大家!
答案 0 :(得分:1)
请查看Codeigniter http://www.codeigniter.com/user_guide/helpers/form_helper.html的文档。它表示如果您使用的是form_open()
,那么它会创建一个打开表单标记,其中包含根据您的配置首选项构建的基本URL。它可以选择添加表单属性和隐藏的输入字段,将始终根据配置文件中的charset值添加属性accept-charset 。
同时试一试它应该有效,因为如果已在属性中定义它将不会覆盖。
$attributes = array(
'accept-charset'=>'utf8'
);
echo form_open('login/check', $attributes);
答案 1 :(得分:0)
确保您已在config.php文件中配置了base_url
$config['base_url'] = 'http://localhost/project'; //your project location
并在控制器中加载表单助手
$this->load->helper('form');