使用惰性php插件wordpress的错误

时间:2015-11-29 06:40:44

标签: php html mysql wordpress session

我想为admin和worker创建登录页面,一旦登录,每个页面的页面都会有不同的内容表。

我已经安装了insert php插件直接在页面中编写代码。

我正在使用会话进行登录,我想使用记录集在每个页面中创建自定义表。

我在Dreamweaver中创建了一个代码,然后将其发布在页面文本中。

我已经创建了这段代码,但它没有像php一样工作,也没有登录并在页面中显示代码。

[insert_php]
    error_reporting(E_ALL);
    session_start(); // Starting Session
    $error=''; // Variable To Store Error Message
    if (isset($_POST['submit'])) {
        if (empty($_POST['username']) || empty($_POST['password'])) {
            $error = "Username or Password is invalid";
        } else {
            // Define $username and $password
            $username=$_POST['username'];
            $password=$_POST['password'];

            // Establishing Connection with Server by passing server_name, user_id and password as a parameter
            $connection = mysqli_connect("localhost", "lujcarwa", "lcarwash2015");

            // To protect MySQL injection for Security purpose
            $username = stripslashes($username);
            $password = mysqli_real_escape_string($password);

            // Selecting Database
            $db = mysqli_select_db("login", $connection);

            // SQL query to fetch information of registerd users and finds user match.
            $query = mysqli_query("select * from login where password='$password' AND username='$username'", $connection);
            $rows = mysqli_num_rows($query);

            if ($rows == 1) {
                $_SESSION['login']=$username; // Initializing Session
                header("location: profile.php"); // Redirecting To Other Page
            } else {
                $error = "Username or Password is invalid";
            }

            mysqli_close($connection); // Closing Connection
        }
    }

    error_reporting(E_ALL ^ E_DEPRECATED);
    include('login.php'); // Includes Login Script

    if(isset($_SESSION['login'])){
        header("location: profile.php");
    }

    error_reporting(E_ALL ^ E_DEPRECATED);

    // Establishing Connection with Server by passing server_name, user_id and password as a parameter
    $connection = mysqli_connect("localhost", "lujcarwa_washer", "dj0P7]w4S]");

    // Selecting Database
    $db = mysqli_select_db("lujcarwa_washer", $connection);
    session_start();// Starting Session

    // Storing Session
    $user_check=$_SESSION['login'];

    // SQL Query To Fetch Complete Information Of User
    $ses_sql=mysqli_query("select username from login where username='$user_check'", $connection);
    $row = mysql_fetch_assoc($ses_sql);
    $login_session =$row['username'];

    if(!isset($login_session)){
        mysql_close($connection); // Closing Connection
        header('Location: index.php'); // Redirecting To Home Page
    }

[insert_php/]

<head>
  <title>Login</title>
  <link rel="stylesheet" type="text/css" href="style.css">
</head>

<body>
  <div id="main">
    <h1> Login </h1>
    <div id="login">
      <form action="" method="post">
        <p>
          <label>UserName :</label>
        </p>
        <p>
          <br />
          <input id="name" name="username" placeholder="username" type="text">
          <br />
          <label>
            <br>Password</label>
          <br />
          <input id="password" name="password" placeholder="**********" type="password">
          <input name="submit" type="submit" value=" Login ">
        </p>
      </form>
    </div>
  </div>
</body>

1 个答案:

答案 0 :(得分:0)

我不知道[insert_php]插件,但看起来这是一个问题,你不会在你的php结束时关闭你的[insert_php]标签,如[/ insert_php]。

修改

你正在关闭它:

[insert_php/] //While it should be: [/insert_php]

希望这可以帮助你。

修改

我刚刚看了一下插件说明,并在FAQ中看到了这个:

为什么我无法设置Cookie或进行浏览器重定向? 使用PHP,在处理任何页面内容之前,会在网页标题行中设置Cookie。 重定向也是在标题行中完成的。当PHP代码位于帖子或页面中时,所有标题行都已与部分内容一起发送。 此时,设置cookie或使用PHP重定向

为时已晚

因此看起来您无法使用此插件在登录时重定向用户。 我建议只在自定义页面模板或头文件中的模板文件夹中编写php。

希望这有帮助!