转到 php 站点中的前一页

Go to a precedent page in a php site

我正在创建一个简单的 php 程序,我正在尝试找到一种方法,以便能够使用按钮从第 2 页返回到第 1 页。我尝试在第二页制作一个按钮并给它赋值 1,但它给我带来了用户错误。我该怎么做?

<?php
    $servername = "localhost";
    session_start();
        if(!(isset($_POST["pagina"]))){
        echo "
            <h2> Accesso </h2>
            <form action='Login.php' method='post'>
                Inserisci il nome utente e password: <br/>
                Utente:<input type='text' name ='utente' /> <br/>
                Password: <input type='password' name ='pwd'/><br/>
                <input type ='submit' value='Accedi'/>
                <input type='hidden' name='pagina' value='1' />
            </form>";
    }else if($_POST["pagina"]==1){
        $utente = $_POST["utente"];
        $password = $_POST["pwd"];
        $conn = new mysqli($servername, $utente, $password, 'agenziaviaggi');
        if($conn->connect_errno){
            echo "Connessione impossibile: ".$conn->connect_error;
            exit;
        }
        $_SESSION["utente"] = $utente;
        $_SESSION["pwd"] = $password;
        
        echo "Aeroporto  ";
        echo "<form action ='Login.php' method = 'post'>
            <input type = 'submit' name = 'aeroporto' value = 'Visualizza Aeroporto'>
            <input type = 'hidden' name = 'pagina' value = '2'/>
        </form>";   
    }
    else if($_POST["pagina"]==2){
        $utente = $_SESSION["utente"];
        $password = $_SESSION["pwd"];
        $conn = new mysqli($servername, $utente, $password, 'agenziaviaggi');
        if($conn->connect_errno){
            echo "Connessione impossibile: ".$conn->connect_error;
            exit;
        }
        switch(true){
            case isset($_POST['aeroporto']):
                echo 'Aeroporto<br/>' ;
                $sql = "SELECT Nome, Città, Servizi, Parcheggi, Telefono FROM aeroporto";
                $result = $conn->query($sql);

                if ($result->num_rows > 0) {
                    while($row = $result->fetch_assoc()) {
                        echo "<br> Nome: ". $row["Nome"]. " - Città: ". $row["Città"]. " - Servizi: ". $row["Servizi"]. " - Parcheggi: ". $row["Parcheggi"]. " - Telefono: ". $row["Telefono"]. "<br>";
                    }
                } else {
                    echo "0 results";
                }

                echo "<form action ='Login.php' method = 'post'>
                    <input type = 'submit' value = 'Visualizza info'>
                    <input type = 'hidden' name = 'pagina' value = '1'/>
                </form>";
                break;
        }
    }
    ?>

所以,阅读你的代码,在你的 'page 2' 上,你有这样的形式:

<form action ='Login.php' method = 'post'>
                    <input type = 'submit' value = 'Visualizza info'>
                    <input type = 'hidden' name = 'pagina' value = '1'/>
                </form>

你的 if-else 声明:

}else if($_POST["pagina"]==1){
        $utente = $_POST["utente"];
        $password = $_POST["pwd"];
        $conn = new mysqli($servername, $utente, $password, 'agenziaviaggi');
        if($conn->connect_errno){
            echo "Connessione impossibile: ".$conn->connect_error;
            exit;
        }
        $_SESSION["utente"] = $utente;
        $_SESSION["pwd"] = $password;

因此您的会话值 utentepwd 被已发布的值替换,但它们不是由您的 'page 2' 发布的。

用户登录并设置会话值后,您还可以创建超链接而不是表单来在页面之间导航。但我不完全理解你的目标。为此创建其他问题。