我的所有表单上都显示错误消息

时间:2015-09-23 08:06:26

标签: php html5 web

我的页面上有三个表单,一个用于更新个人详细信息(名称)第二个用于更新密码,最后一个用于更新用户设备。

当用户点击某个表单的提交可能更改密码时,该消息将显示在密码成功更改的所有表单上。我希望消息显示在已更新的表单上。

代码

我的提交按钮

 <input type="submit" id="submit" value="Update Password" name="changepassword" style="margin-left:70px;"/>

 <input type="submit" id="submit" value="Update" name="updatepersonal"/>

我的php

global $errorstr;

    if (isset($_POST['changepassword'])) {
        $oldpassword = $_POST['currentpassword'];
        $newpassword = $_POST['newpassword'];
        $confirmpassword = $_POST['repassword'];

        if ($newpassword != $confirmpassword) {
            $errorstr = "New passwords do not match";
        }
        else {
            changepassword($oldpassword, $newpassword);
            if ($errorstr == "") {
                $errorstr = "Password changed successfully";
            }
        }
    } else if (isset($_POST['updatepersonal'])) {
        $newfirstname = $_POST['firstname'];
        $newlastname = $_POST['lastname'];      

        changename($newfirstname, $newlastname);
        if ($errorstr == "") {
            $errorstr = "Name changed successfully";

我的错误讯息在每张表格上。

<?php if ($errorstr != ""){ echo "<div class=\"warn\">$errorstr</div>";}?>

2 个答案:

答案 0 :(得分:0)

您可以使用post方法识别该表单,例如

if(isset($_POST['changepassword'])) {
 echo "your message";

}

与其他人相同

答案 1 :(得分:0)

当您点击提交按钮时,它将重新加载页面。并根据您的后端流程,它将加载新页面。您是否可以ajax调用您提交数据并显示消息,或者您可以显示抛出的后端,您必须知道页面重定向并更新某些信息并将该数据传递到重定向页面

$("input[name='changepassword']").click(function(){
            $.ajax({
url:url,
type: 'POST',
data:form.serialize(),

            success:function (result) {
              Show Messages here
}});
});