如何从一个页面发送会话

时间:2016-10-12 12:03:45

标签: php mysql

我有这些代码的会话页面

session_start();

if (!isset($_SESSION['id'])){
header('location:order.php');
}

$ses_id = $_SESSION['id'];

我将它包含在我的登录页面(order.php)

<?php include('session.php'); ?>

这是登录脚本和函数

$username = clean($_POST['username']);
$password =  md5($_POST['password']);
$apollos=$username;
$query=Login($username,$password);
$count = mysql_num_rows($query);
$row = mysql_fetch_array($query);
$phone=$row['Contact_Number'];

DeleteActivation($username);

if ($count > 0) {
    $_SESSION['id'] = $row['memberID'];

    UserPin($username,$pin,$member);
    $From='eFarms';
    $Message='Your User Login Pin from St. Apollos eFarms is '.$pin;

    die("<script>location.href = 'login_sms.php'</script>");
    session_write_close();
} else {
    session_write_close();
}

这是我的Pin验证页面

<?php include('header.php'); ?>
pin = clean($_POST['pin']);


$query=CheckPin($username,$pin,$member);

$count = mysql_num_rows($query);
$row = mysql_fetch_array($query)

if ($count > 0) {
    $_SESSION['id'] = $row['memberID'];
    die("<script>location.href = 'user_home.php'</script>");
    session_write_close();
} else {
    session_write_close();
}

有人应该检查这些代码,更正并告诉我如何以用户名的身份接收到USer主页的会话。

2 个答案:

答案 0 :(得分:0)

在会话开始之前,您必须在每个脚本或公共脚本文件中检查会话是否已经开始或不同。

if (!isset($_SESSION)) {
    session_start();
}

编辑:

不需要上述条件,因为它在内部检查文档中的描述 - http://php.net/manual/en/function.session-start.php

session_start();

答案 1 :(得分:0)

首先,由其他人提供,你使用非常糟糕和不安全的方法! 尝试使用更容易的PDO(当你理解它是如何工作的时候),它更加安全!

其次,你的编码不​​是那么干净,我想这就是为什么你自己找不到问题的原因!

最后,我想你错过了:

session_start();

在你的代码的某些部分!