Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何让用户登录整个网站_Php_Session_Cookies_Login - Fatal编程技术网

Php 如何让用户登录整个网站

Php 如何让用户登录整个网站,php,session,cookies,login,Php,Session,Cookies,Login,我在记录用户时遇到问题。当日志、会话工作时,但当您单击另一个页面时,会话将消失且不工作。当我将session_start放入主页和login.php时,我发现错误,会话已在运行。一些想法?谢谢 Main Page.php <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=de

我在记录用户时遇到问题。当日志、会话工作时,但当您单击另一个页面时,会话将消失且不工作。当我将session_start放入主页和login.php时,我发现错误,会话已在运行。一些想法?谢谢

Main Page.php

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width">
        <link rel="stylesheet" type="text/css" href="css.css">
        <link rel="icon" href="favicon.ico">
        <title>----</title>
    </head>
<body>

    <!-- HEADER      _____________________________________________________________________________ --                        >
<div id="whiteblock">
    <div id="grayblock">
        <div id="logo">
        </div>
            <h1>----</h1>
            <h2>----</h2>

            <a href="websiteregister.php" id="registration">Registration</a>

                <?php 
                    include "Login.php"; 
                    echo $_SESSION["LogiNick"];
                ?> 

                <div id="inputposunuti">
                    <form name="Log" id="Log" method="post">
                        <label for="Nick" class="inputtext">Nick:</label>
                        <input type="text" name="LogiNick" id="LogiNick" class="input"> <?php echo $EmptyNick; echo $Else; ?>

                        <label for="Pass" class="inputtext">Password:</label>
                        <input type="password" name="LogiPass" id="LogiPass" class="input"> <?php echo $EmptyPass; echo $Else; ?>

                        <input type="submit" name="LogIn" value="⇒">
                    </form>

    </div>      
</div>
<!-- HEADER _____________________________________________________________________________ -->

<!-- MENU _______________________________________________________________________________ -->

<div id="pruh">
    <div id="search">
        <form name="search" method="post">
            <input type="text" name="hledat" id="sirka">
            <input type="submit" name="subhledat" value="Search!" id="button">
        </form>
    </div>
        <div id="menutext">
            <a href="website.php"> <p>Home</p> </a>
            <a href="#"> <p>----</p> </a>
            <a href="#"> <p>----</p> </a>
            <a href="#"> <p>----</p> </a>
            <a href="#"> <p>----</p> </a>
            <a href="#"> <p>----</p> </a>
        </div>
</div>

<!-- MENU _______________________________________________________________________________ -->

<!-- CONTENT ____________________________________________________________________________ -->

<!-- CONTENT ____________________________________________________________________________ -->

<div id="teams"></div>
</div>


<p id="creator">Created by</p>

----
创建人

Login.php

<?php
    session_start();

    include_once "db.php";
    global $db;

        $Else = $EmptyNick = $EmptyPass = $EmptyNick = "";

            if ($_SERVER["REQUEST_METHOD"] == "POST") {

                $LogiNick = $_POST["LogiNick"];
                $LogiPass = $_POST["LogiPass"];

                if (empty($_POST["LogiNick"])) {
                    $EmptyNick = " - Nick";
                }
                if (empty($_POST["LogiPass"])) {
                    $EmptyPass = " - Password";
                }


            }

            if(!empty($_POST["LogiNick"]) AND !empty($_POST["LogiPass"])){

                $LogiPass = $_POST["LogiPass"];
                $SHA = sha1($LogiPass);

                $sql = "SELECT * FROM WEB_REGISTER WHERE Nick = :nick AND Heslo = :heslo";
                $query = $db->prepare($sql);
                $query->execute(array('nick' => $LogiNick, 'heslo' => $SHA));

                    $count = $query->rowCount();

                    if ($count > 0) {
                        $_SESSION["LogiNick"];
                    }
            }
?>

只要在会话中输入值,就可以设置会话

$_SESSION["name"]=$value;

看看,还要清理用户输入,你的代码看起来很容易受到SQL注入的攻击,对我来说,“在整个网络上”——嗯?你的意思更像是“在整个网站上”,对吗?你也有一大堆被注释掉的代码,为什么?您是否启动了会话,并在所有文件中使用会话?我希望我不是白白打这些。像这样的提问者往往会忽略评论,只会让人们给出一个神奇的答案。是的,我的回答是正确的。^^是的,你是对的,再一次哈哈