2014-02-05 44 views
0

我想條件表,以便它只顯示SQL結果返回時。如果沒有返回值,則不要顯示錶格。這裏是我所擁有的:如何確定SQL結果是否已在PHP中返回?

## PPAP Information 
$q23 = "SELECT * FROM $modlible.P0353 JOIN $amflible.CUSMAS ON PCUSNO = CUSNO WHERE PITEM='$id'"; 
$stmt23 = db2_prepare($con, $q23); 
$result23 = db2_execute($stmt23); 
$fin23 = db2_fetch_assoc($stmt23); 

如何檢測結果是否已返回給我?

+0

檢查結果? – Alexander

+0

我該怎麼做? –

回答

0

這可能有助於

$iRows = db2_num_rows($stmt23); 
if ($iRows > 0) { 
    //Do if zero results 
} else { 
    //Do if more results 
} 

,或者你可以檢查NULL值

if ($fin23) { 
    //Row was fetched 
} 
+0

好主意。不能讓它工作。我在$ iRows上做了一個var_dump,並且在這兩種情況下都得到了int(-1)。它沒有意義,但因爲如果返回結果該數字應該改變。 –

+0

你的第二個解決方案奏效。有點修改。 –

+0

if(!$ fin23){ //空白 }其他{ //返回結果 –

0

您可以檢查返回的SQL代碼。如果代碼是SQL0100(+100),則表示沒有行被返回。

+0

有了這個,我在我的PHP日誌文件中得到一個錯誤。我寧願做一些其他的事情,因爲我使用這個日誌很多,當你有一堆不必要的錯誤時,它很難。 –

0

如果沒有結果,while循環將無法循環

while($fin23 = db2_fetch_assoc($stmt23)){ 
    // print your results 
} 
+0

有了這個,我在我的PHP日誌文件中出現錯誤。我寧願做一些其他的事情,因爲我使用這個日誌很多,當你有一堆不必要的錯誤時,它很難。 –