在提問題前請先仔細查閱PHP手冊,MYSQL手冊 以及PHPINFO里面的設(shè)置,另外希望你讀一下PHP編程標(biāo)準(zhǔn).
1:為什么我得不到變量
我在一網(wǎng)頁向另一網(wǎng)頁POST數(shù)據(jù)name,為什么輸出$name時卻得不到任何值?在PHP4.2以后的版本中register_global默認為off,若想取得從另一頁面提交的變量:
方法一:在PHP.ini中找到register_global,并把它設(shè)置為on.
方法二:在接收網(wǎng)頁最前面放上這個extract($_POST);extract($_GET);(注重extract($_SESSION)前必須要有Session_Start()).
方法三:一個一個讀取變量$a=$_GET["a"];$b=$_POST["b"]等,這種方法雖然麻煩,但比較安全.
2:調(diào)試你的程序
在運行時必須知道某個變量為何值。我是這樣做的,建立一文件debug.php,其內(nèi)容如下:
- <?PHP
- Ob_Start();
- Session_Start();
- Echo "<pre>";
- Echo "本頁得到的_GET變量有:";
- Print_R($_GET);
- Echo "本頁得到的_POST變量有:";
- Print_R($_POST);
- Echo "本頁得到的_COOKIE變量有:";
- Print_R($_COOKIE);
- Echo "本頁得到的_SESSION變量有:";
- Print_R($_SESSION);
- Echo "</pre>";
- ?>
然后在php.ini中設(shè)置:include_path = "c:/php",并將debug.php放在此文件夾,以后就可以在每個網(wǎng)頁里包含此文件,查看得到的變量名和值.
3:如何使用session
凡是與session有關(guān)的,之前必須調(diào)用函數(shù)session_start();為session付值很簡單,如:
- <?php
- Session_start();
- $Name = "這是一個Session例子";
- Session_Register("Name");//注重,不要寫成:Session_Register("$Name");
- Echo $_SESSION["Name"];
- //之后$_SESSION["Name"]為"這是一個Session例子"
- ?>
新聞熱點
疑難解答