Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/88.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_Html_Phpmyadmin - Fatal编程技术网

使用会话的PHP

使用会话的PHP,php,html,phpmyadmin,Php,Html,Phpmyadmin,我有一个login.html页面,用户可以在其中登录并查看他们的信息;显示姓名和邮政编码。此信息显示在login.php页面上 <?php session_start(); echo "systemResult=Success"; $row=mysql_fetch_array($result); echo $row['Name']." is located at".$row['Postcode']; $_SESSION['name'] =

我有一个login.html页面,用户可以在其中登录并查看他们的信息;显示姓名和邮政编码。此信息显示在login.php页面上

<?php
session_start();

echo "systemResult=Success";
        $row=mysql_fetch_array($result);
        echo $row['Name']." is located at".$row['Postcode'];
        $_SESSION['name'] = $row['User_id'];

你的信息
详细信息


姓名:
邮政编码:
首先,您的页面需要是
.php

其次,在页面上呈现任何内容之前,必须使用
session\u start()
启动会话。在页面开头的标题上方启动会话

通读

更新

info.php
代码更改为如下所示:

<?php
session_start();
// This needs to go before ANYTHING else on the page.
?>
<!DOCTYPE html>
<html>

    </head>
    <body>
        <!-- Home -->
        <div data-role="page" id="page1">
            <div data-theme="a" data-role="header">
            <a data-role="button" data-theme="c" href="menu.html" data-icon="arrow-l" data-iconpos="left" class="ui-btn-left">
                    Main Menu
                    </a>
                <h3>
                    Your info
                </h3>
                <p>
                    <?php // Put this where you want to echo the user_id on the page
                     echo $_SESSION['user_id']; ?>
                </p>
            </div>
            <form name="form1" method="post" action="login.php">
            <strong>Details</strong>
            <br />
            <br />
            Name: <input name="name" type="text" id="name" />
            <br />
            Postcode: <input name="postcode" type="text" id="postcode" />

            </form


         </div>
    </body>
</html>

你的信息

详细信息

姓名:
邮政编码:
我亲爱的朋友,我想你被会话变量弄糊涂了。请记住,你应该开始

session_ start( );
在php页面开始时,在任何事情开始之前。 您可以将值存储到会话变量,如下所示

$_SESSION['demo'] = 'Hello';
echo $_SESSION['demo'];
您可以检索会话变量,如下所示

$_SESSION['demo'] = 'Hello';
echo $_SESSION['demo'];
就这样。
在分配给会话变量之前,请仔细检查您是否从db获取值

您的会话变量名为$\u session['name'],在login.php文件中将其更改为$\u session['user\u id']=$row['user\u id']。也许您需要多个会话变量?例如:

$_SESSION['user_id']  = $row['User_id'];
$_SESSION['name']     = $row['name'];
$_SESSION['postcode'] = $row['code'];

如前所述,session_start()需要在其他操作之前完成,请将php代码移到DOCTYPE之前。

您的问题对我来说非常不清楚。您的会话代码是否不起作用(我看没问题),或者您想在登录后重定向用户?将名称和邮政编码信息重定向到表单设置中的info.php,而不是在登录时显示的位置。php您没有将名称和邮政编码数据放入会话中。您正在设置
$\u会话['name']
,然后读取未设置(=空)的
$\u会话['user\u id']
。$\u会话['user\u id']是在phpmyadmin数据库中设置的行的名称。这就是信息来源。不,不是
$\u会话['user\u id']
从会话而不是从数据库读取。您也没有设置
$\u会话['user\u id']
。如果你打开PHP警告和通知,你会得到一个错误。只是尝试了一下,现在info.PHP中的信息根本不显示。它只显示空表单,而不发布更多的代码,包括所有的
info.php
,任何人都无法看到发生了什么。此外,即使是处理登录表单的文件也需要声明
session\u start()