Maison >développement back-end >tutoriel php >gestion et contrôle des sessions php

gestion et contrôle des sessions php

jacklove
jackloveoriginal
2018-05-22 13:36:251842parcourir

Cet article présentera le contenu pertinent de la gestion et du contrôle des sessions PHP.

Gestion et contrôle de session php

<?php 
    setcookie(&#39;name&#39;); 
    setcookie(&#39;mycookie&#39;); 
    setcookie(&#39;mycookie&#39;,&#39;&#39;); 
    setcookie("mycookie",false); 
    setcookie(&#39;mycookie&#39;,&#39;&#39;,time()-3600); 
    echo ($HTTP_COOKIE_VARS[&#39;mycookie&#39;]); 
    print_r($_COOKIE); 
?>   
<?php 
if (($_POST[&#39;username&#39;] != null) && ($_POST[&#39;password&#39;] != null)) { 
    $userName = $_POST[&#39;username&#39;]; 
    $passWord =md5($_POST[&#39;password&#39;]); 
    $conn = mysqli_connect(&#39;localhost&#39;, &#39;root&#39;, &#39;root&#39;); 
    mysqli_select_db($conn, &#39;test&#39;); 
    $sql = "select * from user where &#39;username = &#39;$userName&#39;"; 
    $res = mysqli_query($conn, $sql); 
    $row = mysqli_fetch_assoc($res); 
    if ($row[&#39;password&#39;] == $passWord) { 
        setcookie(&#39;username&#39;,$userName,time()+60*60*24*30); 
        setcookie(&#39;password&#39;,$passWord,time()+60*60*24*30); 
        header(&#39;Location: welcome.php&#39;."?username=$userName"); 
    } 
} 
if (($_COOKIE[&#39;username&#39;] != null) && ($_COOKIE[&#39;password&#39;] != null)) { 
    $userName = $_COOKIE[&#39;username&#39;]; 
    $passWord = $_COOKIE[&#39;password&#39;]; 
    $conn = mysqli_connect(&#39;localhost&#39;, &#39;root&#39;, &#39;root&#39;, &#39;test&#39;); 
    $res = mysqli_query($conn, "select * from user where username = &#39;$userName&#39;"); 
    $row = mysqli_fetch_assoc($res); 
    if ($row[&#39;password&#39;] == $passWord) { 
        header(&#39;location:welcome.php&#39;."?username=$userName"); 
    } 
} 
?> 
<html> 
 <head>  
 </head> 
 <body> 
    <form action="" method="post"> 
        <p> 
                      用户名:<input type="text" name="username" /> 
                      密码:<input type="text" name="password" /> 
            <input type="submit" value="登录"/> 
        </p> 
    </form> 
 </body> 
</html> 
<?php 
    /* 
     * session使用: 
     * 1.开启session 
     * 2.添加session 
     * 3.读取session数据 
     * 4.销毁session数据 
     * 5.session的扩展:默认session存储位置 
     */ 
    session_start(); 
    $_SESSION=array(&#39;name&#39; => &#39;小明&#39;); 
    $_SESSION = array();//销毁 
    echo $_SESSION[&#39;name&#39;]; 
//     $_SESSION[&#39;name&#39;]=&#39;小明&#39;; 
//     $_SESSION[&#39;name&#39;]=&#39;小明1&#39;; 
//     echo  $_SESSION[&#39;name&#39;]; 
//     unset($_SESSION[&#39;name&#39;]);销毁且不可逆 
//     echo $_SESSION[&#39;name&#39;]; 
?> 
<?php 
    session_start(); 
    if (($_POST[&#39;username&#39;] != null) && ($_POST[&#39;password&#39;] != null)) { 
        $userName = $_POST[&#39;username&#39;]; 
        $passWord = $_POST[&#39;password&#39;]; 
           
        $conn = mysqli_connect(&#39;localhost&#39;, &#39;root&#39;, &#39;root&#39;, &#39;test&#39;); 
        $res = mysqli_query($conn, "select * from user where username=&#39;$userName&#39;"); 
        $row = mysqli_fetch_assoc($res); 
        if ($row[&#39;password&#39;] == $passWord) { 
            $_SESSION[&#39;username&#39;] = $userName; 
            $_SESSION[&#39;password&#39;] = $passWord; 
            header(&#39;Location:welcome.php&#39;); 
        } 
    } 
?>  
<?php 
    session_start(); 
    $userName = $_SESSION[&#39;username&#39;]; 
?>  
<?php 
    $goods = array(); 
    $i = 0; 
    $conn = mysqli_connect(&#39;localhost&#39;, &#39;root&#39;, &#39;root&#39;, &#39;test&#39;); 
    $res = mysqli_query($conn, &#39;select * from shop&#39;); 
    while ($row = mysqli_fetch_assoc($res)){ 
        $goods[$i][&#39;id&#39;] = $row[&#39;id&#39;]; 
        $goods[$i][&#39;name&#39;] = $row[&#39;name&#39;]; 
        $goods[$i][&#39;price&#39;] = $row[&#39;price&#39;]; 
        $i++; 
    } 
?> 
<html> 
    <head> 
        <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> 
    </head> 
    <body> 
        <?php 
            foreach ($goods as $value){ 
                echo &#39;商品名&#39;.$value[&#39;name&#39;].&#39;价格&#39;.$value[&#39;price&#39;]; 
                echo "<a href=buy.php?name=".$value[&#39;name&#39;].&#39;&price=&#39;. 
                $value[&#39;price&#39;].">购买</a>"; 
                echo &#39;<br />&#39;; 
            } 
        ?> 
        <a href="shoppingCart.php">查看购物车</a> 
    </body> 
</html> 
<html> 
<head> 
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> 
</head> 
<body> 
    <?php 
        session_start(); 
        $name = $_GET[&#39;name&#39;]; 
        $price = $_GET[&#39;price&#39;]; 
           
        $goods = $_SESSION[&#39;goods&#39;]; 
        if ($name == $goods[$name][&#39;name&#39;]) { 
            $_SESSION[&#39;totalPrice&#39;] += $price; 
            $goods[$name][&#39;number&#39;] += 1; 
        }else { 
            $goods[$name][&#39;name&#39;] = $name; 
            $goods[$name][&#39;price&#39;] = $price; 
            $goods[$name][&#39;number&#39;] += 1; 
            $_SESSION[&#39;totalPrice&#39;] += $price; 
        } 
        $_SESSION[&#39;goods&#39;] = $goods; 
        header(&#39;location: goodsList.php&#39;); 
    ?> 
</body> 
</html>  
<html> 
<head> 
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> 
</head> 
<body> 
<?php 
    session_start(); 
    $goods = $_SESSION[&#39;goods&#39;]; 
    echo &#39;您购买了:<br />&#39;; 
    foreach ($goods as $value){ 
        echo $value[&#39;name&#39;].&#39;价格&#39;.$value[&#39;price&#39;].&#39;数量&#39;.$value[&#39;number&#39;].&#39;<br />&#39;; 
    } 
    echo &#39;总数:&#39;.$_SESSION[&#39;totalPrice&#39;].&#39;<br />&#39;; 
?> 
<a href="goodsList.php">返回商品列表</a> 
</body> 
</html>

Cet article présente la gestion et le contrôle de session php Pour plus de connaissances connexes, veuillez faire attention au site Web chinois php.

Recommandations associées :

Apprentissage de base en PHP six : gestion des erreurs

Introduction comparative à SESSION et COOKIE sous PHP

Apprenez comment obtenir l'adresse IP du client en php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn