将会话变量发送到另一个页面

时间:2014-07-18 08:26:46

标签: php session variables

我正在寻找在登录期间创建的会话变量并将它们发送到另一个页面。

在第一页,这是一个表格,我测试了这样的变量:

    <?php 
    session_start();
    $variable = $_SESSION['steamid'];
    echo  $variable;
    echo $_SESSION['steamid'];

它正确地回显了我的变量两次。问题是我无法访问下一页上的变量,该变量从上一页获取变量并将它们上传到数据库。

这是代码:

<?php 
session_start();
include 'report.php';
define('DB_NAME', 'xxx');
define('DB_USER', 'xxx');
define('DB_PASSWORD', 'xxx');
define('DB_HOST', 'localhost');

$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);

if (!$link) {
     die('Could not connect: ' . mysql_error());
     }

     $db_selected = mysql_select_db(DB_NAME, $link);

     if (!$db_selected) {
     die('Can\'t use ' . DB_NAME . ': ' . mysql_error());
     }
     $value2 = $_SESSION['steamid'];
     $value1 = $_POST['64id'];
     $value3 = $_POST['info'];
     $value4 = $_POST['ev'];
     $value5 = $_POST['grp'];
echo $value2;
     $sql = "INSERT INTO Tool (64id, b64id, info, ev, grp) VALUES ('$value1', '$value2', 
     '$value3', '$value4', '$value5')";
     mysql_query($sql);
     mysql_close();
?>

但代码不会回显$ value2或将其发送到数据库。

任何帮助?

第一页的完整脚本是:

<html>
<head>
    <title>Tool</title>
    <link href="style.css" rel="stylesheet">
    <link href="/img/favicon.ico" rel="icon" type="image/x-icon" />
</head>
<body>


<?php 
session_start();

require 'steamauth/steamauth.php';
$userPermitted = array(
                       //D2TRG
                       76561198058365176, // Del

                       //TFTRG
                       76561198019973842, // Frost
                       76561198044873576, // Gamma
                       76561198061239658, // Walker
                       76561198037237481, // Tyrone
                       76561198059430645, // Walker
                       76561198071750788, // Love
                       76561198053519412, // Artful
                       76561198073355125, // Hazard
                       76561198046958131, // Yunz
                       76561198059682839, // Lulu
                       76561198050610274, // Knitro
                       76561198059179348, // Kelvin
                       76561198069400954, // Kodorin
                       76561198068702942, // Champion
                       76561198059420483); // Dee_Jay


if(!isset($_SESSION['steamid'])) {
    steamlogin(); //login button
} else {
     $variable = $_SESSION['steamid'];
    $html = '<div id="container">
            <h1>Report a User</h1>
            <form action="run.php" method="post" id="form"/>
            <p>User\'s 64 ID: <input type="text" name="64id"/></br>
            <p>Group:</p><select name="grp">
  <option value="tftrg">TFTRG</option>
  <option value="ttrg">TTRG</option>
  <option value="fmgr">FmGr</option>
  <option value="d2trg">DTRG</option>
  <option value="kgbdan">KGBdan</option>
 </select>
            <p>Infringement:<br><textarea cols="40" rows="8" name="info"></textarea></br>
            <p>Evidence:<br> <textarea cols="40" rows="5" name="ev"></textarea></br>
                <input id="submit" type="submit" value="Submit"/>
                </form>


';

   if (in_array($_SESSION['steamid'], $userPermitted)){
        include ('steamauth/userInfo.php'); //To access the $steamprofile array
        echo $html;
        echo "You are currently logged in as: " . $steamprofile['personaname'] . "</br>";
        echo '<img src="'.$steamprofile['avatarfull'].'" title="" alt="" />'; // Display their avatar!
        echo  $variable;
        logoutbutton(); //Logout Button
          }
    else{
        echo 'user is not permitted to use this tool';
    }
}
?>
    </div>
</body>
<html>

1 个答案:

答案 0 :(得分:0)

试试这个:

更改

$variable = $_SESSION['steamid'];

$_SESSION['steamid'] = $variable;