PHP로 세션을 사용하고, session_start를 사용하고 로그인 폼에서 전달되는 변수를 저장합니다. 변수 시작 부분에 'user_name'과 'user_role'변수가 있습니다. 변수가 설정되어 있는지 확인합니다. , 그렇지 않다면 로그 온 화면으로 리디렉션하십시오. 이제 문제는 필자가 메뉴 옵션이있는 포함 파일이있는 것입니다. 사용자가 권한있는 사용자 인 경우 그렇지 않은 것보다 더 많은 옵션을 표시합니다. 내 문제는 포함 파일을 처리 할 때 내가 얻을 PHP Notice: Undefined index: user_name in C:\inetpub\wwwroot\2StarsGames.com\SomeGame v4.1\interface\HeaderMenu.php on line 20
'user_name'나는 파일의 나머지 부분에서 오류가 발생하지 않기 때문에, 난 그냥이 게시물에 메뉴 파일이 포함되어 있습니다. 별도의 파일 안에 있다면 세션의 특별한 치료가 있는지 누군가가 말해 줄 수 있습니까?PHP 세션 전역 변수
<div id="page_header">
<img class="logoImage" src="./img/some1.png" align="left" />
SUPER B
<img class="logoImage" src="./img/some2.png" align="right" />
</div>
<div id="page_menu">
<center>
<a class="menu" href="./Contest.php">Contest</a>
<a class="menu" href="./Cards.php">Cards</a>
<a class="menu" href="./PlayersPoints.php">Players Points</a>
<a class="menu" href="./SBCardsCode.php">Card's Code</a>
<a class="menu" href="./Avatars.php">Avatars</a>
<a class="menu" href="./Sims.php">Sims</a>
<a class="menu" href="./Boards.php">Boards</a> <br/>
<a class="menu" href="./Charity.php">Charity</a>
<?php
$username = strtolower($_SESSION['user_name']);
if($username == 'some name1' ||
$username == 'some name2' ||
$username == 'some name3' ||
$username == 'some name4')
{
echo "
<a class='menu' href='./PayoutsNoWin.php'>Payouts</a>
<a class='menu' href='./Payins.php'>Payins|</a>
<a class='menu' href='./Payments.php'>Payments</a>
<a class='menu' href='./Tools.php'>Tools</a>
<a class='menu' href='./TransferData.php'>Transfer Data</a>
<a class='menu' href='./Games.php'>Games</a>
";
}
?>
</center>
편집 으로 session_start()이 하나를 포함하는 파일에 있습니다.
'session_start'가'include' 전에 호출되는 것이 확실합니까? – Raziel
또는 $ _session에 user_name을 설정 했습니까? –
'session_start'는이 파일을 포함하고있는 파일에서 무엇보다 먼저 호출됩니다. 또한 위에있는 변수를 확인하고 설정되지 않은 경우 로그 작성 화면으로 리디렉션합니다. –