2016-04-29 40 views
-2

signin.php用户登录后登出:PHP的变化登录在

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

if (mysqli_connect_errno()) 
{ 
    echo "MySQLi Connection was not established: " . mysqli_connect_error(); 
} 

if(isset($_POST['login'])) 
{ 
    $username = mysqli_real_escape_string($con,$_POST['username']); 
    $password = mysqli_real_escape_string($con,$_POST['password']); 

    $sel_user = "SELECT * FROM user WHERE username='$username' AND password='$password'"; 
    $run_user = mysqli_query($con, $sel_user); 

    $check_user = mysqli_num_rows($run_user); 

    if($check_user = 2) 
    { 
     $_SESSION['username']=$username; 
     echo "<script>window.open('index.php','_self')</script>"; 
    } 
    else 
    { 
     echo "<script>alert('Email or password is not correct, try again')</script>"; 
    } 
} 

?> 

的index.php:

<ul class="nav navbar-nav navbar-right"> 
    <li><a href="mypage.html">My Page</a></li> 
    <li><a href="signup.php">Sign up</a></li> 
    <li><a href="signin.php">Sign in</a></li> 
</ul> 

因此,有在我的index.php三个选项,我的页面,注册和登录。我想更改登录到用户登录时退出并在我的页面选项左侧显示我的姓名。我如何修改我的代码?请不要只说“你需要~~~”。请指出确切地添加它的位置。谢谢

+4

'if($ check_user = 2)'猜这是干什么用的。编辑:它“分配”,所以它将永远是真实的,等于两个。 –

+1

你不应该让人们真正修复你的代码。人们只会告诉你你应该试图接近你的目标。 – Celoain

+0

[3个不同等于]的可能重复(http://stackoverflow.com/questions/2063480/the-3-different-equals) –

回答

1

在地方的

<li><a href="signin.php">Sign in</a></li> 

你需要

<li> 
    <?php 
     if(isset($_SESSION['username'])) { ?> 
      <a href="signout.php">Sign out</a> 
    <?php 
     } else { ?> 
      <a href="signin.php">Sign in</a> 
    <?php 
     } ?> 
</li> 

你有大量的安全问题存在。您正在以数据库中的纯文本形式存储密码,看起来像它。 你需要解决这个问题。现在。