使用PHP操作文件从HTML输入表单发布数据,而不刷新页面

时间:2018-02-28 10:31:11

标签: javascript php html

我有一个HTML输入表单和一个PHP文件。现在我尝试执行PHP文件并返回结果而不刷新页面。所以,我已经使用javascript来做到这一点。但现在使用javascript后,$ _POST [uid]无法获取用户输入的ID,因此PHP文件返回else条件。

我有这个HTML表单:

<form method="post" action="test.php">
                <span>
                    Sign in System
                </span>

                <div data-validate = 
 "ID is required">
                    <input id="uid" type="text" name="uid" 
 placeholder="Please enter your ID number">
                    <span class="focus-input100"></span>
                    <span class="symbol-input100">
                        <i class="fa fa-lock" aria-hidden="true"></i>
                    </span>
                </div>

<input type="button" id="searchForm" 
onclick="SubmitForm();" value="Signin" />

这是使用过的javascript代码:

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
function SubmitForm() {
var uid= $("#uid").val();
$.post("test.php", { uid: uid},
function(data) {
alert("Sorry.. " + data);
});
}
</script>

这是我的PHP代码:

session_start();
$uid = $_SESSION['uid'] = $_POST['uid'];
$first7 = substr($uid, 0, 8);
$ids=Array(Some Array Values)
foreach ($ids as $id) {
if (substr($id, 0, 8) === $first7){
header("Location: success.php");
}
else{ 
echo "Entered ID is Wrong"; break;
}
}

现在结果总是给我一个显示警告框的else条件:输入的ID是错误的......它甚至无法检查它是否正确并重定向到success.php

任何想法?

1 个答案:

答案 0 :(得分:1)

var idd = $("#uid").val();

您在输入中没有idd名称,uid

并在php中

session_start();
$uid = $_SESSION['uid'] = $_POST['idd'];