2014-10-19 76 views
1

我在网站上制作一个用户系统,我无法获取表单发布到文件。

这里是在HTML文件的形式:
HTML表单不能发布

<form method="post" action="php/userlogin.php"> 
      <p><input type="text" name="usernameL" value=""></p> 
      <p><input type="password" name="passwordL" value=""></p> 
      <p><input type="submit" name="submit" value="Login"></p> 
</form> 

而且在php目录userlogin.php:

<?php 

$username = $password = ""; 

if ($_SERVER["REQUEST_METHOD"] == "POST") { 
    $username = test_input($_POST["usernameL"]); 
    $password = test_input($_POST["passwordL"]); 
} 

function test_input($data) { 
    $data = trim($data); 
    $data = stripslashes($data); 
    $data = htmlspecialchars($data); 
    return $data; 
} 

?> 

我新的形式,并不能找到一个回答任何地方或甚至像这样的问题。我将如何解决这个问题?

+0

这就是为什么你总是打开PHP的错误报告 – Ghost 2014-10-19 12:07:27

+0

这段代码除了设置2个变量外没有其他任何操作 – DarkBee 2014-10-19 12:23:07

+0

打开php错误,在页面的顶部放置以下内容 - > ini_set('display_errors', 1); \t error_reporting(E_ALL); – Mubo 2014-10-19 12:34:25

回答

0

那么你的代码似乎工作得很好,也许问题出在你的测试环境,你需要像XAMPP https://www.apachefriends.org/这样的解决方案来在你的计算机上运行php脚本。其他方法是在一些支持php的免费虚拟主机上远程运行脚本。

如果不是则检查是否实际数据被发送的情况下,修改您的代码是这样的:

... 
if ($_SERVER["REQUEST_METHOD"] == "POST") { 
    $username = test_input($_POST["usernameL"]); 
    $password = test_input($_POST["passwordL"]); 
    echo $username."<br/>"; 
    echo $password."<br/>"; 
} 
... 
1

你的代码是工作的罚款。

该问题可能与文件结构有关。请检查。

例如:如果在你的项目的根文件夹HTML文件,然后将userlogin.php文件应该在project_root_folder /测试在那里/

所以文件结构应该是...

Root/ 
    index.html 
    Test/ 
     userlogin.php 
1

代码很好。 只输出变量的值。

echo $username.' '.$password; 

您可以看到数据正在发布。