亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪問板塊 發(fā)新帖
查看: 1896 | 回復(fù): 1
打印 上一主題 下一主題

php使用session來保存用戶登錄信息 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2012-03-11 22:47 |只看該作者 |倒序?yàn)g覽
php使用session來保存用戶登錄信息










使用session保存頁(yè)面登錄信息

1、數(shù)據(jù)庫(kù)連接配置頁(yè)面:connectvars.php
  1. <?php//數(shù)據(jù)庫(kù)的位置define('DB_HOST', 'localhost');//用戶名define('DB_USER', 'root');//口令define('DB_PASSWORD', '19900101');//數(shù)據(jù)庫(kù)名define('DB_NAME','test') ;?>
  2. 復(fù)制代碼
復(fù)制代碼
2、登錄頁(yè)面:logIn.php
  1. <?php//插入連接數(shù)據(jù)庫(kù)的相關(guān)信息require_once 'connectvars.php';//開啟一個(gè)會(huì)話session_start();$error_msg = "";//如果用戶未登錄,即未設(shè)置$_SESSION['user_id']時(shí),執(zhí)行以下代碼if(!isset($_SESSION['user_id'])){    if(isset($_POST['submit'])){//用戶提交登錄表單時(shí)執(zhí)行如下代碼        $dbc = mysqli_connect(DB_HOST,DB_USER,DB_PASSWORD,DB_NAME);        $user_username = mysqli_real_escape_string($dbc,trim($_POST['username']));        $user_password = mysqli_real_escape_string($dbc,trim($_POST['password']));        if(!empty($user_username)&&!empty($user_password)){            //MySql中的SHA()函數(shù)用于對(duì)字符串進(jìn)行單向加密            $query = "SELECT user_id, username FROM mismatch_user WHERE username = '$user_username' AND "."password = SHA('$user_password')";            //用用戶名和密碼進(jìn)行查詢            $data = mysqli_query($dbc,$query);            //若查到的記錄正好為一條,則設(shè)置SESSION,同時(shí)進(jìn)行頁(yè)面重定向            if(mysqli_num_rows($data)==1){                $row = mysqli_fetch_array($data);                $_SESSION['user_id']=$row['user_id'];                $_SESSION['username']=$row['username'];                $home_url = 'loged.php';                header('Location: '.$home_url);            }else{//若查到的記錄不對(duì),則設(shè)置錯(cuò)誤信息                $error_msg = 'Sorry, you must enter a valid username and password to log in.';            }        }else{            $error_msg = 'Sorry, you must enter a valid username and password to log in.';        }    }}else{//如果用戶已經(jīng)登錄,則直接跳轉(zhuǎn)到已經(jīng)登錄頁(yè)面    $home_url = 'loged.php';    header('Location: '.$home_url);}?><html>    <head>        <title>Mismatch - Log In</title>        <link rel="stylesheet" type="text/css" href="style.css" />    </head>    <body>        <h3>Msimatch - Log In</h3>        <!--通過$_SESSION['user_id']進(jìn)行判斷,如果用戶未登錄,則顯示登錄表單,讓用戶輸入用戶名和密碼-->        <?php        if(!isset($_SESSION['user_id'])){            echo '<p class="error">'.$error_msg.'</p>';        ?>        <!-- $_SERVER['PHP_SELF']代表用戶提交表單時(shí),調(diào)用自身php文件 -->        <form method = "post" action="<?php echo $_SERVER['PHP_SELF'];?>">            <fieldset>                <legend>Log In</legend>                <label for="username">Username:</label>                <!-- 如果用戶已輸過用戶名,則回顯用戶名 -->                <input type="text" id="username" name="username"                value="<?php if(!empty($user_username)) echo $user_username; ?>" />                <br/>                <label for="password">Password:</label>                <input type="password" id="password" name="password"/>            </fieldset>            <input type="submit" value="Log In" name="submit"/>        </form>        <?php        }        ?>    </body></html>
  2. 復(fù)制代碼
復(fù)制代碼
3、登入頁(yè)面:loged.php
  1. <?php//使用會(huì)話內(nèi)存儲(chǔ)的變量值之前必須先開啟會(huì)話session_start();//使用一個(gè)會(huì)話變量檢查登錄狀態(tài)if(isset($_SESSION['username'])){    echo 'You are Logged as '.$_SESSION['username'].'<br/>';    //點(diǎn)擊“Log Out”,則轉(zhuǎn)到logOut頁(yè)面進(jìn)行注銷    echo '<a href="logOut.php"> Log Out('.$_SESSION['username'].')</a>';}/**在已登錄頁(yè)面中,可以利用用戶的session如$_SESSION['username']、 * $_SESSION['user_id']對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢,可以做好多好多事情*/?>
  2. 復(fù)制代碼
復(fù)制代碼
4、注銷session頁(yè)面:logOut.php(注銷后重定向到lonIn.php)
  1. <?php//即使是注銷時(shí),也必須首先開始會(huì)話才能訪問會(huì)話變量session_start();//使用一個(gè)會(huì)話變量檢查登錄狀態(tài)if(isset($_SESSION['user_id'])){    //要清除會(huì)話變量,將$_SESSION超級(jí)全局變量設(shè)置為一個(gè)空數(shù)組    $_SESSION = array();    //如果存在一個(gè)會(huì)話cookie,通過將到期時(shí)間設(shè)置為之前1個(gè)小時(shí)從而將其刪除    if(isset($_COOKIE[session_name()])){        setcookie(session_name(),'',time()-3600);    }    //使用內(nèi)置session_destroy()函數(shù)調(diào)用撤銷會(huì)話    session_destroy();}//location首部使瀏覽器重定向到另一個(gè)頁(yè)面$home_url = 'logIn.php';header('Location:'.$home_url);?>
  2. 復(fù)制代碼
復(fù)制代碼

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2012-03-11 22:47 |只看該作者
謝謝分享
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP