2

我正在解决这个问题:
我有$_POST['user']变量。如果我print_r这个变量我得到:

Array (
  ['name'] => Your name 
  ['phone'] => Your phone number 
  ['email'] => Your email
) 

但是如果我尝试使用$_POST['user']['name'],什么也不会发生,它是一个空值。

如果我设置$_POST['user']一个变量也会发生这种情况,例如$user,当我print_r $user得到相同的数组结果时,但如果我尝试使用$user['name']它是空白的。

这是已经提交的输入数据

<input type="text" name="user['name']" value="Your name" class="general-user user-name-style" />
<input type="text" name="user['phone']" value="Your phone number" class="general-user user-data" />
<input type="text" name="user['email']" value="Your email" class="general-user user-data right-user" />

我是否以错误的方式处理数组?

4

2 回答 2

3

撇号包含在键中,即您得到“'name'”而不是“name”。
试试 $_POST['user']["'name'"]

要解决此问题,请从 HTML 代码中删除撇号:

<input type="text" name="user[name]" value="Your name" class="general-user user-name-style" />
<input type="text" name="user[phone]" value="Your phone number" class="general-user user-data" />
<input type="text" name="user[email]" value="Your email" class="general-user user-data right-user" />
于 2012-10-04T23:55:21.773 回答
0

检查一下,也许“名字”有西里尔字母或不同于常规拉丁字母“a”或“e”。

于 2012-10-04T23:41:49.363 回答