0

そのため、2 ページ目で変数を渡そうとしています。セッションに変数が含まれているかどうかを確認するために、インデックス ページの上部でセッションをテストしました。このような:

<?php
error_reporting(E_ALL ^ E_NOTICE);
session_start();
$UserID = $_SESSION['CustNum'];
$UserN = $_SESSION['UserName'];
echo "$UserN";
?>

インデックスページについてはまったく問題ありません。実際にユーザー名を出力します。しかし、変数を渡す次のページになると、セッションに何かが含まれているかどうかを確認するために同じコードを試しました。しかし、その後、何もありません。助けてください。また、これらのコードはどちらも私のコードの上にあり、何よりも優れています。

4

4 に答える 4

3

どこにある:

$_SESSION['CustNum'] = 'xxx';
$_SESSION['UserName'] = 'yyy';

?

于 2012-10-04T14:40:59.770 に答える
0

session_start()他のページでa を宣言しますか?

そして、$_SESSION['UserName']どこかで初期化する必要があります。

ちょうどこのような$_SESSION['UserName'] = "my_username"

于 2012-10-04T14:42:31.700 に答える
0

この方法を試してください

最初のページで

error_reporting(E_ALL ^ E_NOTICE);

session_start();

$_SESSION['CustNum']='12345';

$_SESSION['UserName']='sivanthi';

別のページで

error_reporting(E_ALL ^ E_NOTICE);

session_start();

echo $_SESSION['CustNum'];

echo $_SESSION['UserName'];
于 2012-10-04T17:04:23.170 に答える
0

あなたのコメントとコードによると:

if($numrows === 1){ $row = mysql_fetch_assoc($query)or die ('Unable to run query:'.mysql_error());
// fetch associated: get function from a query for a database
$dbpass = $row['PassWord']; // read password of inputted user from the query.
$dbuser = $row['UserName']; // read username  from the query
$dbactive = $row['Active']; // read if user is active $dbid = $row['CustNum'];

if($UserP == $dbpass){ if($dbactive == 1){ //set session information
    $_SESSION['CustNum'] = $dbid;
    $_SESSION['UserName'] = $dbuser;
}

..これだと思います:if($UserP == $dbpass){ if($dbactive == 1)ですfalse。チェックしてください。

于 2012-10-05T08:05:50.470 に答える