鍍金池/ 問答/HTML5  PHP  網(wǎng)絡(luò)安全  HTML/ php和html怎么結(jié)合,我要做seesion驗(yàn)證啊。。。

php和html怎么結(jié)合,我要做seesion驗(yàn)證啊。。。

只能用模版技術(shù)嗎,我這個(gè)界面是個(gè)靜態(tài)界面,代碼量很大,,,不想大概 我應(yīng)該怎么去做???能不能給個(gè)demo

這樣寫肯定是不ok的。。。。求各位大佬指教clipboard.png

后臺(tái)登錄處理代碼

<?php
header("Content-type:text/html;Charset=utf8");
session_start();
//登錄處理界面 logincheck.php
//判斷是否按下提交按鈕
if(isset($_POST["hidden"]) && $_POST["hidden"] == "hidden")
{
    //將用戶名和密碼存入變量中,供后續(xù)使用
    $user = trim($_POST["username"]);//trim()函數(shù)移除字符串兩側(cè)的空白字符
    $psw = md5(trim($_POST["userpwd"]));//密碼使用md5()加密一次,存入數(shù)據(jù)庫(kù)
    $code = $_POST["code"];
    if($user == "" || $psw == "")
    {
        //用戶名或者密碼其中之一為空,則彈出對(duì)話框,確定后返回當(dāng)前頁(yè)的上一頁(yè)
        echo "<script>alert('請(qǐng)輸入用戶名或者密碼!'); history.go(-1);</script>";
    }else if($code != $_SESSION[' ver_code']){
        echo "<script>alert('驗(yàn)證碼不正確,請(qǐng)重新輸入!'); history.go(-1);</script>";
    }
    else
    { //確認(rèn)用戶名密碼驗(yàn)證碼不為空,則連接數(shù)據(jù)庫(kù)
        $conn = mysqli_connect("localhost","userdb","wRXxAG8eMb");//數(shù)據(jù)庫(kù)帳號(hào)密碼為安裝數(shù)據(jù)庫(kù)時(shí)設(shè)置
        if(mysqli_errno($conn)){
            echo mysqli_errno($conn);
            exit;
        }
        mysqli_select_db($conn,"userdb");
        mysqli_set_charset($conn,'utf8');
        $sql = "select username,userpwd from user where username = '$user' and userpwd = '$psw'";
        $result = mysqli_query($conn,$sql);
        $num = mysqli_num_rows($result);
        if($num)
        {
            //seesion登錄認(rèn)證
            
            $_SESSION["username"]="username";
            
            
            echo "<script>alert('成功登錄'); window.location.href='../index.html';</script>";
        }
        else
        {
            echo "<script>alert('用戶名或密碼不正確!');history.go(-1);</script>";
        }
    }
}
else
{
    echo "<script>alert('提交未成功!');</script>";
}

?>
回答
編輯回答
葬愛

先通過(guò)后臺(tái)判斷是否登陸,再選擇要加載的前臺(tái)頁(yè)面,大概就是這么個(gè)意思;

比如說(shuō),你現(xiàn)在這個(gè)場(chǎng)景,假設(shè)進(jìn)入地址是http://web.com/index.php,在index.php文件里去做是否登陸的功能,然后再根據(jù)情況選擇要加載的前臺(tái)頁(yè)面;

// index.php
<?php
// 簡(jiǎn)單判斷一下用戶是否登陸
if(empty($_SESSION['uid']) && !isset($_SESSION['uid'])) {
    // 未登錄就加載登陸頁(yè)面
    
    // 方案一 加載html登陸頁(yè)面
    require('login.html');
    // 方案二 重定向跳轉(zhuǎn)到登陸頁(yè)面
    // $url就是要跳轉(zhuǎn)的登陸頁(yè)面地址
    header('Location:' . $url);
} else {
    // 已登錄就加載后臺(tái)主頁(yè)頁(yè)面  
    // 方案同上登陸
    require('home.php');
}
2018年6月1日 09:58
編輯回答
撿肥皂

session驗(yàn)證不是應(yīng)該在后臺(tái)做驗(yàn)證??為什么要在模板寫

2017年5月19日 07:18
編輯回答
薄荷綠

先驗(yàn)證,再?zèng)Q定是否輸出模版的內(nèi)容。

2018年3月7日 16:23
編輯回答
逗婦乳

在后臺(tái)設(shè)置一下

2017年2月6日 15:49