2012-02-24 56 views
0

我運行下面的查詢:MySQL查詢PHP和PDF顯示只有第一個字符

$sql_1 = "SELECT `mb_transactions`.`TransactionID` AS `TXID` FROM `mb_transactions`"; 
$data_1 = $db->query($sql_1); 
$count = count($data_1, COUNT_RECURSIVE); 
if ($count > 1){ 
     foreach ($data_1 as $transaction_1) { 
     $pdf->Cell($colWidths4[0], $pdf->fontHeight($fontSize), $transaction_1['TXID'], $border, 0, 'L'); 
     $pdf->Cell($colWidths4[1], $pdf->fontHeight($fontSize), '', $border, 0, 'L'); 
     $pdf->Cell($colWidths4[2], $pdf->fontHeight($fontSize), '', $border, 0, 'L'); 
     $pdf->Cell($colWidths4[3], $pdf->fontHeight($fontSize), '', $border, 0, 'L'); 
     $pdf->Ln(); 
     } 
} 

但是我只得到從顯示結果的第一個字符。當我做的var_dump($ transaction_1)我看到的字符串(2)「11」 ...等 欣賞任何見解有人關心,分享

+0

如果這是一個MySQLi :: query()調用,你沒有從你的結果中獲取一行,'$ data_1'是一個結果資源。 – 2012-02-24 14:09:00

+0

當它是字符串值時(類似於'MySQLi結果資源11'被數組索引'[]'訪問),您可以得到該字符串的單個字符。讓我們知道'query()'正在使用哪個MySQL API,會知道'$ data_1'實際包含的內容。 – 2012-02-24 14:09:43

+0

$ colWidths4的內容也可能有用 – 2012-02-24 14:15:02

回答

3

試試這個,而不是對每個

while ($data = $data_1->fetchRow(DB_FETCHMODE_ASSOC)) { 

}