2012-05-01 71 views
0

這個問題已經回答了(見下面的問題)PHP錯誤導致一個空白頁(錯誤報告正常工作)

原題: 我建了一個網站,工作正常,沒有問題。然後,我們開始從基於VPS的服務器遷移到真正的專用服務器。在這樣做的過程中,我們的託管公司將我們從CentOS 4升級到CentOS 6,從PHP 5.2.9升級到PHP 5.3,並將我們從DSO轉移到SuPHP。現在新的服務器正在導致我們之前沒有的錯誤。我們的其中一頁顯示爲空白,並將其縮小爲一行代碼(第26行)。

1. class directoryByLetterReverse{ 
2.  private $da=0; 
3.  public $category; 
4.  public $letter; 
5.  public $listing; 
6.  function __construct($letter,$category,$conn){ 
7.   $this->letter=$letter; 
8.   $this->category=$category; 
9.   $recordSet=&$conn->Execute('SELECT members.Member_ID AS MemberID, companies.CompanyName AS CompanyName, members.IPAddress AS IPAddress, directory_table.dir_id, members.BusinessType_ID, members.MemberType FROM members Inner Join companies ON companies.Company_ID = members.Company_ID Left Join directory_table ON directory_table.member_id = members.Member_ID WHERE companies.CompanyName LIKE "'.$this->letter.'%" AND members.BusinessType_ID LIKE "'.$this->category.'" AND members.published="1" ORDER BY directory_table.dir_id DESC, members.Member_ID DESC;'); 
10.   if(!$recordSet){ 
11.    print $conn->ErrorMsg(); 
12.   } else { 
13.    $this->listing[0]['memberid']=''.$recordSet->fields[0].''; 
14.    $this->listing[0]['companyname']=''.$recordSet->fields[1].''; 
15.    $this->listing[0]['ipaddress']=''.$recordSet->fields[2].''; 
16.    $this->listing[0]['dirid']=''.$recordSet->fields[3].''; 
17.    $this->listing[0]['typeid']=''.$recordSet->fields[4].''; 
18.    $this->listing[0]['memtype']=''.$recordSet->fields[5].''; 
19.    while($array=$recordSet->FetchRow()){ 
20.     $this->da++; 
21.     $this->listing[$this->da]['memberid']=''.$recordSet->fields[0].''; 
22.     $this->listing[$this->da]['companyname']=''.$recordSet->fields[1].''; 
23.     $this->listing[$this->da]['ipaddress']=''.$recordSet->fields[2].''; 
24.     $this->listing[$this->da]['dirid']=''.$recordSet->fields[3].''; 
25.     $this->listing[$this->da]['typeid']=''.$recordSet->fields[4].''; 
26.     $this->listing[$this->da]['memtype']=''.$recordSet->fields[5].''; < - - - - this line right here is what is causing the problem 
27.    }; 
28.   }; 
29.  } 
30.  function returnSingle($j){ 
31.   return $this->listing[$j]['memberid'].' '.$this->listing[$j]['companyname'].' '.$this->listing[$j]['ipaddress'].' '.$this->listing[$j]['dirid']; 
32.  } 
33. } 

對我的生活中,我找不到任何錯線26,但如果我離開那裏,我得到一個空白頁,如果我註釋掉,一切正常(直到你去一個網頁,引用它,但我希望會被打破)。此外,只是一個側面說明,我使用ADOdb數據庫抽象庫(http://adodb.sourceforge.net/)進行MySQL交互。

原來事實上代碼沒有問題,測試服務器只是性能有限,無法處理未緩存頁面加載的負載。感謝您的評論,因爲他們讓我以正確的方向思考,找到我需要的東西。

+0

這是你縮小到的單行代碼? – dweiss

+0

哎呀,我編輯了帖子,但它是26行 –

+0

你有什麼錯誤?你記錄PHP錯誤?你記錄的Apache錯誤? – hakre

回答

0

而沒有「;」第27和28行,仍然不起作用?

+0

也嘗試過,事實上我試圖讓它起作用,但沒有什麼區別,但是如果我在26行的開頭放了一個//,一切都剛剛開始加工 –