php $ _POST问题

时间:2016-02-11 20:17:15

标签: php post

好的,我知道这可能是一个非常愚蠢的问题,但我无法弄清楚这里发生了什么。我的原始html文件中有这个 -

<form action="./api" method="POST">
    <label for="first-name">First Name: </label>
    <input id="first-name" type="text" name="first_name" /><br/>
    <label for="last-name">Last Name: </label>
    <input id="last-name" type="text" name="last_name" /><br/>
    <input type="submit" name="send" value="Submit Form"/>
</form>

在我的api文件夹中,我有一个index.php文件,其中包含以下代码 -

<?php
print_r($_POST);
?>

多数民众赞成 - 我知道它不安全但我只是想让它发挥作用。它返回一个空数组......

Array ()

我真的需要第二双眼睛,我错过了什么?为什么不传输信息?

更新

将操作更改为action =“。/ api / index.php”按预期返回已发布的变量。正如有人在下面评论过,我之前在api文件夹中点击了index.php,因为它返回了空数组。奇怪的是它不接受数据。在PHP中常见的做法是使你的帖子的目标明确吗?

1 个答案:

答案 0 :(得分:1)

请为您的操作添加完整的文件路径并转换您的 $_POST['']变量。下面的代码应该完全基于您的问题。

 <form action="../api/index.php" method="POST">
        <label for="first-name">First Name: </label>
        <input id="first-name" type="text" name="first_name" /><br/>
        <label for="last-name">Last Name: </label>
        <input id="last-name" type="text" name="last_name" /><br/>
        <input type="submit" name="send" value="Submit Form"/>
    </form>

将此添加到../ api / index.php

 <?php
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
echo $first_name;
echo $last_name;
?>