Php 卸下模块并连接新模块

Php 卸下模块并连接新模块,php,html,mysql,Php,Html,Mysql,我有一个sidebar.php文件。一个模块“login.php”连接到此文件 <!-- Sidebar --> <aside class="slide"> <?php if(!isset($_POST['user'])) { require 'login.php'; } else { require 'authorized.php'; } ?> </aside> login.php <div class="log

我有一个sidebar.php文件。一个模块“login.php”连接到此文件

<!-- Sidebar -->
<aside class="slide">
<?php 
if(!isset($_POST['user'])) {
    require 'login.php'; 
} else {
    require 'authorized.php'; 
}
?>
</aside>

login.php

<div class="login">
  <form method="post" action="../profile.php">
      <p><input type="text" name="log" value="" placeholder="Login or Email"></p>
      <p><input type="password" name="pass" value="" placeholder="Password"></p>
      <p class="remember_me">
        <label>
          <input type="checkbox" name="remember_me" id="remember_me">
          Remember me
        </label>
      </p>
      <p class="submit"><input type="submit" name="sub" value="Login"></p>
  </form>
</div>

记得我吗

发送表单时,我希望删除login.php,而不是添加authorized.php

profile.php

<?php
include("db.php");

$log = $_POST['log'];
$pass = $_POST['pass'];

if(isset($_POST['sub'])) {
  $q = mysql_query("SELECT * FROM user WHERE log='$log'");
  $r = mysql_fetch_array($q);

  if($pass == $r['pass']) {
    header('location: /');
  } else {
    header('location: /');
  }
}
?>


如何操作?

如果在登录中有一个名为
user
的输入,则需要在侧边栏文件中设置一个条件:

<!-- Sidebar -->
<aside class="slide">
    <?php 
    if(!isset($_POST['user'])) {
        require 'login.php'; 
    } else {
        require 'authorized.php'; 
    }
    ?>
</aside>


当然,您还需要检查用户是否有有效值,并进行更多有效性检查,以验证所有必填字段是否存在且有效。

require
周围添加一个条件,并根据需要请求页面。您的代码易受攻击。您应该通过或驱动程序将准备好的语句与绑定参数一起使用。有一些很好的例子。不要使用
mysql.*
函数。自v5.5版(2013年6月)起,它们就被弃用,自v7.0版(2015年12月)起被删除。而是将or函数与and一起使用。错误:无法在写入时使用函数返回值context@Qwerty我错误地在文章中使用了错误类型的括号,我将其编辑为使用
$\u POST['user']
,正如我在回答中所写,您需要有一个名为'user'的输入字段,我的示例才能工作,因此,或者更改
name=“log”
更改为
name=“user”
或将条件更改为
如果(!isset($\u POST['log'])
是,我更改了它,但页面仍然加载login.php。可能是我的profile.php中的问题?请尝试调试。在用户post检查之前添加一个
var\u dump
,查看哪里可能不太好,另外在概要文件的开头添加一个
die(\uuuuuu FILE\uuuuuuu)
语句,查看您是否达到了目的