操作文件PHP中出现错误

操作文件PHP中出现错误,php,Php,我有一个文件,该文件是管理员更改用户名和密码的表单。名为“change_password.php”的文件。代码如下: <?php session_start(); include_once('../config.php'); ?> <head> <meta charset="UTF-8" /> <!-- <meta http-equiv="X-UA-Compatible" content="IE=edge,

我有一个文件,该文件是管理员更改用户名和密码的表单。名为“change_password.php”的文件。代码如下:

<?php 
session_start();    
include_once('../config.php');
?>
<head>
        <meta charset="UTF-8" />
        <!-- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">  -->
        <title>***********</title>
        <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
        <meta name="description" content="Login and Registration Form with HTML5 and CSS3" />
        <meta name="keywords" content="html5, css3, form, switch, animation, :target, pseudo-class" />
        <meta name="author" content="Codrops" />
 <link rel="shortcut icon" href="../favicon.ico"> 
        <link rel="stylesheet" type="text/css" href="../css/demo.css" />
        <link rel="stylesheet" type="text/css" href="../css/style2.css" />
        <link rel="stylesheet" type="text/css" href="../css/animate-custom.css" />
</head>

<body>

<div class="container">
            <!-- Codrops top bar -->
            <div class="codrops-top">
              <div class="clr"></div>
            </div><!--/ Codrops top bar -->
 <header>
          </header>

<section>

 <div id="container_demo" >
                    <!-- hidden anchor to stop jump http://www.css3create.com/Astuce-Empecher-le-scroll-avec-l-utilisation-de-target#wrap4  -->
                    <a class="hiddenanchor" id="toregister"></a>
                    <a class="hiddenanchor" id="tologin"></a>
                    <div id="wrapper">
                        <div id="signup" class="animate form">
<form  action="change.php" autocomplete="on" method="post" enctype="multipart/form-data"> 
                                <h1>Admin's Profile Account</h1>         

  <?php 
            $admin_id = $_GET['id_admin'];

            $query = mysql_query("select * from administrator where ID_Admin='$admin_id'");

            $data = mysql_fetch_array($query);?>

             <p>
              <label for="username">Username : </label>
              <input id="username" name="username" class="wide" type="text" required="required" value="<?php echo $data['username']; ?>"/>
              <input id="username2" name="username2" class="wide" type="hidden" required="required" value="<?php echo $data['username']; ?>"/>
             </p>
            <p>
                <label for="password">New Password :</label><input id="password" name="password" class="wide" type="password" required="required" placeholder="Your password" />
            </p>
            <p>
                     <label for="confirm_password">Confirm Password : </label> <input id="confirm_password" name="confirm_password" class="wide" type="password" required="required" placeholder="Confirm your password" />
            </p>

<p>&nbsp;</p>

 <center><p class="signup button"> 
                                    <input type="submit" value="Submit" /> 
</p></center>
</form>
 <center><a href="panelAdmin.php">Panel Administrator</a></center>                     
</div>  
        </div>
</section>
</body>
</html>

***********
我有一个用于更改管理员用户名和密码的操作文件。名为“change.php”的文件。当我试图更改用户名和密码时,该文件仅为空白。它没有重定向到另一个页面。我的错在哪里?我试图改变if-else和other的部分,但结果仍然是一样的。这是我的密码:

<?php 
session_start();
include_once('../config.php');

$ID_Admin   = $_POST['admin_id'];
$username   = $_POST['username'];
$password   = $_POST['password'];
$encrypt    = md5($password);
$confirm_pass   = $_POST['confirm_password'];

if ($confirm_pass != $password) {
    echo" <script language='JavaScript'> alert ('Password doesn't match');</script>";
    echo '<script language="JavaScript"> window.location.href ="change_password.php" </script>';
} else {
    if($_POST['username'] != $_POST['username2']){      
    $dup = mysql_query("SELECT username FROM administrator WHERE username='".$_POST['username']."'");
        if(mysql_num_rows($dup) >0){
            echo"<script language='JavaScript'> alert ('Username already use');</script>";
        echo '<script language="JavaScript"> window.location.href ="change_password.php" </script>';
        }
        } else {
    $query = mysql_query("update administrator set username='$username', password='$ecnrypt' where ID_Admin='$ID_Admin'") or die(mysql_error());


                            print '<script type="text/javascript">';
                            print 'alert("Profile has changed")';
                            print '</script>';

                            print '<script type="text/javascript">';
                            print "window.location.href='panelAdmin.php'";
                            print '</script>';}
}
?>

您需要转义单引号,以便:

 echo" <script language='JavaScript'> alert ('Password doesn't match');</script>";
echo“警报('密码不匹配');”;
应该是这样的:

 echo" <script language='JavaScript'> alert ('Password doesn\'t match');</script>";
echo“警报('密码不匹配');”;

我猜这就是它失败的原因,同时确保您的display_error()已启用,以确保您没有收到任何PHP错误。

尝试在有重定向的地方使用它,只需
窗口。location
将为您完成以下工作:

echo '<script language="JavaScript">window.location = "change_password.php"; </script>';
echo'window.location=“change_password.php”;

另外,请注意.php后面的分号“

表单中没有名为
admin\u id
的formelement

<input type="hidden" name="admin_id" value=5" />

由于PHP代码无法找到通过POST传递的值,因此需要在表单中包含一个名为
admin\u id
的输入

例如:

 <input type="hidden" name="admin_id" value="<?php  echo $admin_id; ?>" />

1.停止使用mysql_*函数,因为它们已被弃用..使用PDO或MYSQLI_*代替2.SQL注入警报!3.打开错误报告?4.放置一些回音以查看代码执行的程度?空白页表示存在语法错误。您能输出您得到的错误吗?您可以查看
php_error_log
@Naruto s在对另一个文件使用mysql,并且一切正常之前,我认为这不是主要问题:)@bcesars我没有使用localhost,我已经托管了它。@patrickstar19我没有说这是你的主要问题,我只是指出这是个问题;)通常,当javascript没有重定向时,你可以检查源代码,看看是否有任何脚本写入十、我一直在为文件“change\u password.php”添加源代码。该文件是管理员更改用户名和密码的表单。哦,好的,所以密码没有被更新,对吗?试试这个:在
如果($confirm\u pass!=$password){
之前,插入这一行:
var\u dump($\u POST)
我已经把它放好了,但仍然是空的,没有显示错误,但是文件没有重定向到另一个页面。你到底在哪一行包含这个
input
标记?我在
input
用户名之前包含了input标记,是真的吗?是真的。但是我认为还有另一个错误。尝试包含
error\u reporting(E\u ALL);ini\u set()在表单页面中显示_errors”,1);
与您在
change.php中所做的完全一致,这样我们就可以看到输出的错误。但是,没有显示任何错误,所以我该怎么办?