PHP会话不起作用

时间:2012-07-20 19:56:09

标签: php session

在我的网站的一个页面上,我将变量存储在会话中,而在另一个页面上,我需要将它们再次使用,但它不起作用。

这是在第一页。

<?php
session_start();
$_SESSION['email']=$_POST["email"];
$_SESSION['username']=$_POST["uname"];
$_SESSION['password']=$_POST["cpass"];
?>

<html>

这是第二页,只是这么简单,但我无法让它发挥作用。

<html>
<body>
$emailcc = $_SESSION['email'];
$usernamecc = $_SESSION['uname'];
$passcc = $_SESSION['cpass'];

我的第二页更新

<?php
session_start();
?>

<html>
<body>

<?php

$emailcc = $_SESSION['email'];
$usernamecc = $_SESSION['uname'];
$passcc = $_SESSION['cpass'];

当我尝试将其添加到sql或输出变量为空时,它仍然无效。

mysql_query("INSERT INTO Users (Username, Password, Email, Notes, Pass)
VALUES ('$usernamecc', '$passcc', '$emailcc', 3, 1)");

3 个答案:

答案 0 :(得分:10)

您需要在第二页顶部或在将任何输出发送到浏览器之前<?php session_start(); ?>(除非您使用输出缓冲)。

此外,您的第二个文件需要由PHP解析,因此如果它是HTML文件,您需要将其重命名为.php或将服务器配置为解析.html个文件。 / p>

答案 1 :(得分:2)

在第二页上试试这个:

<?php
session_start();
$emailcc = $_SESSION['email'];
$usernamecc = $_SESSION['uname'];
$passcc = $_SESSION['cpass'];
?>

在使用会话之前,您必须致电 session_start()

答案 2 :(得分:0)

在首页试试这个:

 <?php
 session_start();
 $_SESSION['email']=$_REQUEST["email"];
 $_SESSION['username']=$_REQUEST["uname"];
 $_SESSION['password']=$_REQUEST["cpass"];
 ?>

在第二页上尝试此操作:(您在此页面上使用了错误的会话名称)

 <?php
 session_start();
 $emailcc = $_SESSION['email'];
 $usernamecc = $_SESSION['username'];
 $passcc = $_SESSION['password'];
 ?>

MYSQL

mysql_query("INSERT INTO Users (Username, Password, Email, Notes, Pass)
VALUES ($usernamecc, $passcc, $emailcc, 3, 1)");