使用php和ajax创建会话

时间:2019-03-25 01:44:09

标签: javascript php

我是Web开发的初学者,所以请理解我。我正在尝试使用php文件创建会话,并使用ajax请求在javascript中调用它。但是在地址栏中输入index.html的路径后,它始终显示索引。我想知道如何使用javascript和php做到这一点。如果没有活动的用户,则限制网站的所有页面。

例如逻辑:

if (userhasValue == true) {
//redirect to index and can access the whole website
} else {
// redirect to login page
}

我已经尝试了下面的代码,但是即使ajax请求中接收的数据为空,它仍会重定向到index.html。

<?php
   include('config.php');
   session_start();
   $user_check = $_SESSION['login_user'];
   $temparray = array();

      $ses_sql = mysqli_query($db,"select user_id,username,fullname from user where username = '$user_check'");

      $row = mysqli_fetch_array($ses_sql,MYSQLI_ASSOC);

        if ($row > 0 ){         
                array_push($temparray, $row); //save your data into array
                echo json_encode($temparray);
        } else {
            echo 'Error';
        }

?>

function getUser(){
var user ='';
var fullname ='';
var id ='';
var tempArray = '';
var name = '';
    $.ajax({
            type:'POST',
            url:'../bench/php/session.php',
            data:'',
            success:function(msg){
                alert(JSON.stringify(msg));
                let tempArray = JSON.parse(msg)
                user = JSON.stringify(tempArray[0]['username']);
                fullname = JSON.stringify(tempArray[0]['fullname']);    
                id = JSON.stringify(tempArray[0]['id']);        
                document.getElementById('fullname').innerHTML = fullname;   
                if (msg == 'Error') {
                   window.location.href = "../pages-login.html";
                }                       
            }, error: function(e){
                console.log(e);
            }, complete: function(c){
                console.log(c);
            }
        });
}

如果用户未登录,则上面的代码不会限制index.html和其他页面的可访问性。

如果用户尝试在不登录的情况下重定向到索引页面,我想限制索引页面和其他页面。

请帮助我。任何帮助将不胜感激!预先感谢

0 个答案:

没有答案