2012-12-12 86 views
0

我會嘗試把isset,但仍然給我一個通知,你們可以幫助我..就像我之前說過,我還在學習PHP,我可以通過鍵入通知消失 錯誤_reporting(E_ALL &〜E_NOTICE);但我還是想解決它......notice:undefined index雖然仍然放issets

 Notice: Undefined index: IdUser in C:\wamp\www\contract\content\maintanace\add_newUser.php on line 9 
     Notice: Undefined index: Categori in C:\wamp\www\contract\content\maintanace\add_newUser.php on line 10 


     $IdUser= isset($_POST['IdUser']); 
     $Categori= isset($_POST['Categori']); 

     $IdUser= $_SESSION['IdUser']; 
     $Categori= $_SESSION['Categori']; 


     $IdUser= (isset($_SESSION['IdUser'])) ? $_SESSION['IdUser'] : false; 
     $Categori= (isset($_SESSION['Categori'])) ? $_SESSION['Categori'] : false; 

     if($IdUser!='' && $Categori= '1') 

      { 
        $apply = mysql_query("SELECT * FROM user WHERE IdUser= '".$IdUser."' AND Categori='".$Categori."'"); 
        $result = mysql_fetch_array($apply); 
      } 

回答

0

isset返回一個true或false值,因此

$IdUser= isset($_POST['IdUser']); 

設置$ ID用戶爲是真,還是假的。這不是你想要完成的。

也許試試這樣?儘管我仍然不完全確定你在問什麼。

if(!isset($_SESSION['IdUser'])){ 
//Register SESSION variables. 
} 
+0

做到這一點,所以我就把如果循環和內,我把$ IdUser = isset($ _ POST ['IdUser']); , 我對嗎? –

+0

仍然得到相同的消息... –

+0

@NixshamBMohamad我沒有得到循環部分 – ianace

0

您沒有在會話索引上檢查isset。

你可以嘗試這樣的事:

$IdUser= (isset($_SESSION['IdUser'])) ? $_SESSION['IdUser'] : false; 
$Categori= (isset($_SESSION['Categori'])) ? $_SESSION['Categori'] : false; 
+0

如何檢查它..請向我解釋 –

+0

ooo..i看到..現在我有點理解了,還有更多的brendan怎麼樣? –

+0

我只是編輯我的編碼...你請檢查它 –

0

你可以這樣來做,或者你可以用一個三元聲明

if(isset($_POST['IdUser']) || isset($_POST['Categori'])) 
     { 
     $IdUser = $_POST['IdUser']; 
     $Categori= $_POST['Categori']; 
     } 
     elseif(isset($_SESSION['IdUser']) || isset($_SESSION['Categori'])) 
      { 
       $IdUser = $_SESSION['IdUser']; 
       $Categori= $_SESSION['Categori']; 
      } 
      else 
       { 
        $IdUser = ""; 
        $Categori= ""; 
       } 
+0

它工作的感謝,但我可以問你我的循環,你做的注意事項? –

+0

不明白你在問什麼循環。但你不應該使用mysql,因爲它是折舊的。檢查Mysqli或PDO –

相關問題