【问题标题】:Setting a session through php and selectively loading html通过php设置会话并选择性地加载html
【发布时间】:2013-11-03 07:46:43
【问题描述】:

我是 php 和 web 服务器技术的新手,所以请多多包涵。我正在尝试拥有一个具有表单的网页。提交表单,如果数据正确,它会重新加载并加载不同的 html。这是我的代码:

<?php

session_start();
$_SESSION['user'] = "";
$_SESSION['pass'] = "";

echo "This is the front page. Please input your data";

if($_SESSION['user'] != 'asdf'){
    $html = file_get_contents('scripts/login.html');
    echo $html;
$_SESSION['user'] = $_POST['user'];
}

if($_SESSION['user'] == "awedes"){
   $html =  file_get_contents('scripts/strsd.html');
   echo $html;
 }

到目前为止,我认为这很好。我有一个表格,登录后,它说提交。我希望页面重新加载,但这次我想将 SESSION['user'] = 设置为输入。表单将如下所示:

<form action="/" method="post">
    <input type="text" name="user" value=""/>
    <input type="submit" value="Submit"/>
</form>

我的问题:如何设置 SESSION['user'] 以便当我单击表单提交时,'user' 输入变为 SESSION。 谢谢

【问题讨论】:

    标签: php html forms session


    【解决方案1】:

    在您的代码中,

    请删除会话初始化行

    $_SESSION['user'] = "";
    $_SESSION['pass'] = "";
    

    原因是,每当您提交表单会话时都会变空,这样下面的条件就不起作用了,还要确保

         if($_SESSION['user'] != 'asdf')  
    

    以上,如果用户值为空,是否需要处理?,

    echo "This is the front page. Please input your data";
    
     if($_SESSION['user'] != 'asdf'){
            $html = file_get_contents('scripts/login.html');
            echo $html;
            $_SESSION['user'] = $_POST['user'];
        }
    
        if($_SESSION['user'] == "awedes"){
           $html =  file_get_contents('scripts/strsd.html');
         echo $html;
       }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-31
      • 2014-07-27
      • 2018-10-30
      • 1970-01-01
      • 1970-01-01
      • 2013-09-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多