2013-07-20 53 views
0

爲什麼頁面無法獲得$temp_kt值?我測試了$_SESSION['temp_kt']$_ENV['temp_kt'],都沒有工作。

<?php 
$temp_kt=0; 
if(isset($_POST['db'])) 
{ 
    if($_POST['db']=="feedback") 
    { 
     global $temp_kt; 
    $temp_kt=$_POST['temp_kt']; 
    } 
    exit(); 
} 
if(isset($_GET['q'])) 
{ 
    echo "temp_kt=".$temp_kt; 
} 
?> 
+2

這怎麼能打印任何東西?設置'$ temp_kt'的代碼也會退出! – Jon

+2

首先爲什麼你需要一個'global'關鍵字? –

回答

3

您已退出if(isset($_POST['db']))這意味着您不能同時擁有if語句。如果你想保存在會話中的值,你應該使用這樣的代碼:當你設置

<?php 
session_start(); 
if (isset($_POST['db'])) { 
    if ($_POST['db']=="feedback") { 
     $_SESSION['temp_kt'] = $_POST['temp_kt']; 
    } 
    exit(); 
} 
if (isset($_GET['q'])) { 
    echo "temp_kt=" . $_SESSION['temp_kt']; 
} 
?> 

的session_start功能將使會話,你需要在開始時和獲取​​會話值(它會發送cookie到瀏覽器 - 使用標題 - 所以你以前不能有任何回聲)。

+1

指出他需要'session_start()',否則他會在10分鐘內發佈另一個問題,說明udefined'$ _SESSION' var –

+0

@ Mr.Alien關於'session_start()'函數的信息 – jcubic

+0

+1他的要求。 – DevZer0