我的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
。
答案 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连接之前或之前,你不应再有任何错误。