• ベストアンサー

sqlite3接続でフィールドの合計を

sqlite3接続でフィールド(kei)の合計を求めたのですが、できません!初心者なものでよろしくご教授お願い致します。 $pdo = new PDO('sqlite:db/syouhin.db'); $st = $pdo->query("SELECT sum(kei) *FROM list "); while ($row = $st->fetch()) { $kei = htmlspecialchars($row['kei']); echo "<td>$kei</td>"; }

質問者が選んだベストアンサー

  • ベストアンサー
  • shimix
  • ベストアンサー率54% (865/1590)
回答No.1

>$st = $pdo->query("SELECT sum(kei) *FROM list "); このSQLだとエラーになりますよね(転記ミスでしょうか)。 >$kei = htmlspecialchars($row['kei']); $row['kei']として取得したいのであれば、 $st = $pdo->query("SELECT sum(kei) as kei FROM list "); とすべきでは?(というか、まずは var_dump($row); の結果をキチンと確認すべき)。 数値とわかっているものをhtmlspecialcharsする必要はありません(場合によってはprintfでフォーマットの必要はあるでしょうけど)。また1行しか結果が返らないことが決まっているのですからwhileを使う必然性はありません。 $pdo = new PDO('sqlite:db/syouhin.db'); $st = $pdo->query('SELECT sum(kei) as kei FROM list'); if ($row = $st->fetch()) { echo '<td>' . $row['kei'] . '</td>'; }

関連するQ&A