2015-04-30 43 views
2

我想抓取sybase數據庫中的5條記錄。我使用sybase_fetch_array()sybase_fetch_array無法抓取多行

$link = sybase_connect('192.168.1.29', 'dba', 'password') 
       or die("Could not connect !"); 
$result = sybase_query("SELECT TOP 5 * FROM User"); 
$value = sybase_fetch_array($result); 

我可以運行通過Interactive SQL中的SQL和它的作品,但是當我var_dump($value)結果是隻有一行。我已經嘗試過了:

while ($value= sybase_fetch_array($result)){ 
    echo $value['UserID']; 
} 

哪個也不管用。

+0

什麼輸出是否來自'$ value'的var_dump? – TobyLL

+0

絕對看起來很奇怪。雖然應該工作......這是正常的,但你的第一個例子只返回一行。 sybase_fetch_array的文檔清楚地表明它返回一個包含單個行的數組,並且後續調用將返回下一行(如果有) –

+0

您是否嘗試過sybase_fetch_assoc? – jckhan

回答

0

$ value是一個簡單的數組。如果你看看PHP教程,你會發現索引數組的方式是偏移量,而不是散列字段名稱。比如,我打印出來的表格行的字段值到一個表佈局,其中字段名EVENT_ID(0),EVENT_NAME(1),EVENT_TIME(2),sc_id(3)等:

while($row = sybase_fetch_array($result)) { 
    $i++; 

    print " <tr>\n"; 
    print "  <td class="A">$row[0]</td>\n"; 
    print "  <td>$row[1]</td>\n"; 
    print "  <td>$row[2]</td>\n"; 
    print "  <td>$row[3]</td>\n"; 
    print "  <td class="tmsgWidth tmsg">$row[4]</td>\n"; 
    print " </tr>\n"; 
    print "\n"; 
}