将帖子数据传递给php函数

时间:2016-04-01 20:22:03

标签: javascript php html

我是这个网站的新手和编程。

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Login page</title>

<script> //This is the client side form validation with Javascript
//This code is executed on the client's browser
function validateForm()
{
    var x=document.getElementById("username").value;
    if (x==null || x=="") //check that the name field is not blank
    {
        alert("Your username must be filled out");
        return false;
    }
    var y =document.getElementById("password").value;
    if (y==null || y=="") //check that the project field is not blank
    {
        alert("Your password must be filled out");
        return false;
    }
 }
</script>

<?php //This is the server side form validation with PHP
//This code executes on the web server
//Write your server side form validation code here
//checks form is submitted

我试图通过此函数从用户名和密码获取数据到proccess。我已经乱了好几个小时了,终于放弃了。你能帮忙的话,我会很高兴。

function checkUserData($inputData) {
$inputData = htmlspecialchars($inputData);
$inputData = trim($inputData);
$username = stripslashes($inputData);
return $inputData;
}

?>  

</head>
<body>

<form method="post" action="<?php echo $_SERVER["PHP_SELF"];?>"onsubmit="return validateForm()">
Username: <input type="text" name="uname" id="username" /><br/>
Password: <input type="text" name="pwd" id="password" maxlength="6" /><br/>
<input type="submit" value="Login"/>
<input type="Reset" value="Reset"/>
</form>

</body>
</html>

4 个答案:

答案 0 :(得分:1)

你是否想要返回$ uname?

function checkUserData($inputData) {
    return stripslashes(trim(htmlspecialchars($inputData)));
}
echo checkUserData($_POST['uname']);

我无法理解你在尝试用你的php做什么。如果这解决了您的问题,请告诉我,我会详细说明我的答案。

答案 1 :(得分:1)

我不知道您是否遗漏了帖子中的内容,或者您​​忘记将整个代码添加到帖子中。但是你根本没有获得任何后期变量。因此,为了获取数据并验证您需要执行此操作

$username = $_POST['uname'];
checkUserData($username);

您的帖子不是100%清楚您要做的事情

答案 2 :(得分:0)

我认为你已经使用了服务器变量$ _POST。

示例:

<?php
   //Check if request is POST
   if($_SERVER['REQUEST_METHOD'] == 'POST'){
      $username = checkUserData($_POST['uname']);
      $password = checkUserData($_POST['pwd']);
   }

   function checkUserData($inputData) {
      $inputData = htmlspecialchars($inputData);
      $inputData = trim($inputData);
      $inputData = stripslashes($inputData); 
      return $inputData;
   }
?>

希望这有帮助

答案 3 :(得分:0)

要检查所有已发布的表单字段,您可以使用:

foreach($_POST as $key => $val)
{
  checkUserData($val);
}