これから出力を取得するにはどうすればよいですか:
$VisitorsProfile = $mysql->query("SELECT SUM(views) FROM visitors_profile WHERE publisher = '123456'");
私はこれを試しましたが、何も私を印刷しません!
<?php echo $VisitorsProfile['sum'] ?>
助言がありますか?
列に名前を付ける必要があります。奇妙に聞こえるかもしれませんが、
$VisitorsProfile = $mysql->query("SELECT SUM(views) as totals FROM visitors_profile WHERE publisher = '123456'");
以下に示すように、名前で参照できるように、クエリに mysql_fetch_assoc 関数が必要です。次に、それを参照できます
<?php echo $VisitorsProfile['totals'] ?>
何かとして「として」参照するだけです。単語の後に何を入れても参照できますが、「sum」のようなものは使用しません。これはmysql関数であり、問題を引き起こす可能性があるためです。
PHP では、列名または列インデックスで情報を取得できます。推奨される方法は列名で行うことです。これにより、PHP コードに影響を与えずにクエリの列の順序を変更できるからです。
したがって、それを取得するには、クエリに列エイリアスを追加する必要があります。
$rs = mysql_query("SELECT SUM(value) AS total FROM visitors_profile WHERE publisher = '123456'");
if ($row = mysql_fetch_assoc($rs)) {
echo $row['total'];
}
$row 割り当ての「if」を確認してください。これは、印刷を試みる前に結果行があることを検証するのに役立ちます。mysql_query を呼び出す行でも同じことを行うことをお勧めします。
編集:申し訳ありませんが、オブジェクトを使用していると思うので、次のようになります。
$rs = $mysql->query("SELECT SUM(value) AS total FROM visitors_profile WHERE publisher = '123456'");
if ($row = $mysql->fetch_assoc($rs)) {
echo $row['total'];
}