2016-02-05 120 views
2

表单提交后,超级全局变量为空;然而,得到作品!

下面是代码:

的index.php

<!DOCTYPE html> 

<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Simple Form</title> 
</head> 
<body> 
<fieldset> 
    <form action="print.php" method="POST" > 
     first name:<input type="text" name="Fname"><br> 
     last name:<input type="text" name="Lname"><br> 
     <input type="submit" name="submit" value="submit"> 
    </form> 
</fieldset> 

</body> 
</html> 

print.php

<?php 
echo $_POST['Fname']; 
echo $_POST['Lname']; 
?> 

相同的代码工作正常,在我的电脑和打印print.php的东西,但在这里我提交表单后,Macbook $ _post始终为空。

我使用IntelliJ IDEA作为我的IDE与PHP插件。

I use php 7

+1

那么你的问题是什么? –

+0

@hmtareque我不能在服务器端使用表单的数据,因为$ _POST总是为空,它不是由表单的数据填充。 – Sina

回答

3

的IntelliJ未映射到MAMP服务器。这就是为什么PHP解释,但POST不起作用。为了将MAMP映射到IntelliJ,使用this guide,它适用于IntelliJ最终版和PhpStorm。

+0

我不明白为什么我需要一个MAMP服务器的PHP来接收POST数据。我已经安装了php的本地副本(包括php-cgi),并且我配置了IntelliJ以在设置 - >语言和框架 - > PHP中使用它。当我在编辑一个php页面的时候点击浏览器图标时,该页面就会出现在Web浏览器中。唯一的问题是$ _POST是空的。这听起来不像我需要MAMP的东西。 (事实上​​,一年前我上一次使用PHP时,类似的配置工作 - 虽然它是IntelliJ 13和PHP 5.6。) – Zack

+0

@Zack这正是我的问题所在。根据“集成Apache服务器”标题下的[本指南](https://confluence.jetbrains.com/display/PhpStorm/Installing+and+Configuring+MAMP+with+PhpStorm+IDE),您会发现IntelliJ需要将您的项目部署到Web服务器,MAMP是为您的网页提供服务的本地Web服务器。 IntelliJ本身不是一个Web服务器。它只使用插件将项目部署到Web服务器。 $ _POST为空的原因是,除非你添加MAMP来为你做这件事,否则没有人可以作为服务器。 – Sina

+0

如果没有人作为服务器,那么为什么php页面的其他方面工作? (我不是争论,我只是好奇如何一切工作。) – Zack