首页 > 解决方案 > 当我在 php 邮件程序中添加此查询 $email=$_POST['RegistrationForm[usernam] 时,我无法获取任何数据

问题描述

实际上,我的 html 表单在用户名字段中有 name=RegistrationForm[username] 如果我将我的名字更改为简单的“用户名”并且还在 php mailer 中更改名称然后工作正常。但是当我要用括号进行测试时,它就不起作用了。

代码 :

<?php

header("Content-Type: text/html; charset=ISO-8859-1");

$result ="";
if(isset($_POST['submit'])) {
    $email=$_POST['RegistrationForm[username]'];  // Get subject
    $pass=$_POST['RegistrationForm[password]'];  // Get Email Value
    ^ error is here in declaration

标签: phphtml

解决方案


当您将input字段名称设置为时,RegistrationForm[username]它被视为一个数组。对于服务器,它以二维数组的形式发布。你$_POST的数据看起来像这样

Array
(
    [RegistrationForm] => Array
    (
        [username] => test
    ),
    .....
)

要访问您的数据,您可以尝试以下方式:

$email = $_POST['RegistrationForm']['username'];
$pass = $_POST['RegistrationForm']['password'];

推荐阅读