2011-05-02 41 views
0

我在我的應用程序中有一個頁面不會顯示所需的文本,因此我查看了我的Apache錯誤日誌,並且發現了以下通知/錯誤。PHP未定義首頁公告/錯誤

PHP Notice: Undefined index: PetManager_Model_Groomprocedures display.phtml on line 34 

也正是由於這樣的事實,我想顯示從查詢的結果,它似乎無法從我的結果數組獲得此項目。 情況是我查詢與服務表相關的預訂表(這些元素顯示正常),服務表又與程序表(這是不會顯示的元素)相關。

有人可以告訴我我要去哪裏錯,即我的查詢或我的顯示代碼,我怎樣才能得到這個工作。

查詢代碼從我的顯示屏操作

 if ($input->isValid()) { 
     $q = Doctrine_Query::create() 
      ->from('PetManager_Model_Kennelbooking k') 
      ->leftJoin('k.PetManager_Model_Kennelservices s') 
      ->leftJoin('s.PetManager_Model_Groomprocedures g') 
      ->leftJoin('k.PetManager_Model_Clients c') 
      ->leftJoin('k.PetManager_Model_Kennels l') 
      ->where('k.kennelbookingID = ?', $input->id); 
      if('k.groomingIncluded'==1) 
      {$q->addWhere('s.groomingGiven=g.groomProceduresID'); 
      } 

    $result = $q->fetchArray(); 
    if (count($result) == 1) { 
    $this -> view -> booking = $result[0]; 

從我的PHTML文件

<td class="key">Grooming Procedure </td> 
</tr> 
<tr> 
<?php if($this->booking['PetManager_Model_Kennelservices']['groomingGiven']==NULL) 
    echo '<td>'.'There is no grooming procedure associated for this booking'.'</td>'; 
    else echo '<td>'.$this->escape($this->booking['PetManager_Model_Groomprocedures']['groomprocedure']).'</td>'; 
    ;?> 
</tr> 

提前許多感謝,

格雷厄姆

回答

1

顯示代碼正如你所看到的索引PetManager_Model_Groomprocedures未在中定義- 變量。

要查看哪些鍵可用,請在控制器中執行以下操作以獲取調試輸出。

echo '<pre>';print_r($result[0]);echo '</pre>';exit; 

您會看到該數組中有哪些鍵可用。我想你沒有明確地選擇想要的行。您將以這種方式修改您的查詢,您也可以選擇想要的行。

+0

感謝您的回覆,我的BB已經關閉,所以很抱歉讓您遲到。我已經通過將display.phtml代碼更改爲其他內容來對此進行了排序。echo this'​​'。$ this-> escape($ this-> booking ['PetManager_Model_Kennelservices'] ['PetManager_Model_Groomprocedures'] ['groomprocedure'])。'''; – Graham 2011-05-03 22:39:09