为什么我的变量在TCPDF中未定义?

时间:2017-02-28 15:26:58

标签: php mysql foreach tcpdf calculation

我的Sql表

+------------+---------+
|    name    |  price  |
+------------+---------+
|     A      |    70   |
+------------+---------+
|     B      |    70   |
+------------+---------+

我用TCPDF创建了一个pdf:

$pdo = $db->prepare("SELECT * FROM table");  
    $pdo->execute(); 
    while ($row = $pdo->fetch(PDO::FETCH_ASSOC)) {  
        $result += $row['price'];       
} 

$html = '
<table><tr><th>'.$result.'</th></tr></table>'
;

我希望结果为140,但收到错误消息:

Notice: Undefined variable: result 
TCPDF ERROR: Some data has already been output, can't send PDF file

注意:如果我删除+符号。创建的pdf没有错误,我得到结果70

2 个答案:

答案 0 :(得分:2)

它在锡上执行的操作:$result未在您第一次循环数据时定义。您无法向其添加任何内容,因为它尚未定义。这应该有用。

$pdo = $db->prepare("SELECT * FROM table");  
    $pdo->execute(); 
    $result = 0.0; // Add this row. I'm assuming 'price' is a decimal
    while ($row = $pdo->fetch(PDO::FETCH_ASSOC)) {  
        $result += $row['price'];       
    }

答案 1 :(得分:2)

在线

Artisan::call('passport:install')

你做到了这个

$result += $row['price'];

但是第一次运行脚本时,未定义$ result变量。 添加

$result = $result + $row['price'];

在$ pdo连接之前或之前,你不应再有任何错误。