我看的《从php、阿帕奇,mysql》,书上在“传递客户的用户名”时,第二个文件时怎么从第一个文件得到变量的?
代码如下:<?php
session_start();
$_session['username'] = 'Joe12345';
$_session['user'] = 1;
?><html>
<head>
<title>Find My Favorite Moive!</title>
</head><body>
<?php
$_myfavmovie=urlencode('hello word you');
echo "<a href=\"moviesite.php?favmovie=$_myfavmovie\">";
echo 'Click here to see information about my favorite movie!';
echo '</a>';
?>
</body></html>
第二个文件:
<?php
session_start();
echo $_session['username'];//自己添加的试试能不能得到这个变量。
if($_session['user'] != 1){
echo 'sorry!but you don`t have permission to view this page!';
exit();
}
?><HTML>
<head>
<title>My Favorite Movie Site!-<?php echo $_get['favmovie'];?></title>
</head><body><?php
echo 'welcome to our site!';
echo $_session['username'];
echo '!<br/>';
echo 'My Favorite Movie Is:';
echo $_GET['favmovie'];
echo '<br/>';
$_movierate =5;
echo 'My movie rating for this movie is:';
echo $_movierate;
?>
</body>
</html>
书上的是正常得到变量值然后检查是否user为1,但是我的编译时提醒未定义的变量。
我就是不明白书上代码第一个文件的变量是怎么传到第二个的?
我是刚学php....
原谅我的白痴。
谢谢各位了!变量传递session

解决方案 »

  1.   

    大写!
    $_session 要写做 $_SESSION
      

  2.   

    我擦啊!太谢谢了!突然想起来变量名和函数名都区分大小写的啊。但是我不知道第二个文件时怎么知道这个变量在第一个文件里呢?c语言里是include,php里是不是只要在别的文件里存在这个变量就可以直接用?
      

  3.   

    函数名是不区分大小写的你有 session_start();
    表示你启用了 session 功能
    session变量当然就可以使用啦
      

  4.   

    哈哈,理解了,太谢谢啦!
    百度百科:Session解决方案,就是要提供在PHP脚本中定义全局变量的方法,使得这个全局变量在同一个Session中对于所有的PHP脚本都有效。