Php高手帶路--問題匯總解答

來源:互聯網
上載者:User
 

1:為什麼我得不到變數

  我在一網頁向另一網頁POST資料name,為什麼輸出$name時卻得不到任何值?
  在PHP4.2以後的版本中register_global預設為off
  若想取得從另一頁面提交的變數:

  方法一:在PHP.ini中找到register_global,並把它設定為on.
  方法二:在接收網頁最前面放上這個extract($_POST);extract($_GET);(注意extract($_SESSION)前必須要有Session_Start()).
  方法三:一個一個讀取變數$a=$_GET["a"];$b=$_POST["b"]等,這種方法雖然麻煩,但比較安全.

  2:調試你的程式

  在運行時必須知道某個變數為何值。我是這樣做的,建立一檔案debug.php,其內容如下:

  PHP代碼:

PHP
  <?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中設定:include_path = "c:/php",並將debug.php放在此檔案夾,以後就可以在每個網頁裡包含此檔案,查看得到的變數名和值.

  3:如何使用session

  凡是與session有關的,之前必須調用函數session_start();

  為session付值很簡單,如:

  PHP代碼:

  <?php
  Session_start();
  $Name = "這是一個Session例子";
  Session_Register("Name");//注意,不要寫成:Session_Register("$Name");
  Echo $_SESSION["Name"];
  //之後$_SESSION["Name"]為"這是一個Session例子"
  ?>

  在php4.2之後,可以為session直接付值:

  PHP代碼:

PHP
  <?PHP
  Session_Start();
  $_SESSION["name"]="value";
  ?>

取消session可以這樣:

PHP代碼:

<
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.