我对表单有一个奇怪的问题,如果在表单中发送任何西班牙语字符(á,é,í,ñ等等),它在$ _POST数组中显示为空白字符串。
这是表格:
<form action="<?php echo site_url("home/register"); ?>" method="post">
<div class="row">
<div class="col-md-4 col-md-offset-4">
<input type="text" placeholder="Nombre" name="user[name]" class="form-control"/>
</div>
<div class="space"></div>
<div class="col-md-4 col-md-offset-4">
<input type="text" placeholder="Apellido" name="user[lastname]" class="form-control"/>
</div>
<div class="space"></div>
<div class="col-md-4 col-md-offset-4">
<input type="text" placeholder="E-Mail" name="user[email]" class="form-control"/>
</div>
<div class="space"></div>
<div class="col-md-4 col-md-offset-4">
<input type="password" placeholder="Clave" name="user[password]" class="form-control"/>
</div>
<div class="space"></div>
<div class="col-md-4 col-md-offset-4">
<input type="password" placeholder="Confirmar Clave" name="user[password_confirmation]" class="form-control"/>
</div>
<div class="space"></div>
<div class="col-md-4 col-md-offset-4 text-center">
<input type="submit" value="Registrar" class="btn btn-primary"/>
</div>
</div>
</form>
我已经尝试过没有“user []”。
我以前从来没有遇到过这个问题,我知道这些问题,但只是不发送价值对我来说是全新的。
我谷歌很多,但我认为我做错了搜索,因为我找不到类似的东西。
我正在使用PHP 5.5.9,Apache 2.4.7并使用Codeigniter 2,我之前已多次使用此配置,并且再次从未见过这个问题。
这是一个测试:
如果我发送没有西班牙语字符的数据,则没有问题:
array(1) {
["user"]=>
array(5) {
["name"]=>
string(4) "Jose"
["lastname"]=>
string(5) "Lopez"
["email"]=>
string(7) "t@t.com"
["password"]=>
string(1) "a"
["password_confirmation"]=>
string(1) "b"
}
}
如果我改变,例如Jose和José,我得到:
array(1) {
["user"]=>
array(5) {
["name"]=>
string(0) ""
["lastname"]=>
string(5) "Lopez"
["email"]=>
string(7) "t@t.com"
["password"]=>
string(1) "a"
["password_confirmation"]=>
string(1) "b"
}
}
答案 0 :(得分:1)
在脑海中添加此行,
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">