好的,我知道这可能是一个非常愚蠢的问题,但我无法弄清楚这里发生了什么。我的原始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中常见的做法是使你的帖子的目标明确吗?
答案 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;
?>