Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP命令计算MySQL行的百分比_Php_Mysql - Fatal编程技术网

PHP命令计算MySQL行的百分比

PHP命令计算MySQL行的百分比,php,mysql,Php,Mysql,首先,我是PHP新手,所以我还在学习。我有一个PHP程序来显示MySQL上经常更改的行数。这是我用来显示计数和百分比的回音- echo"<tr><td>{$row['Name']}</td><td {$row['COUNT(tag_logs.tag_no)']}/75</td><td>{$row['(COUNT(tag_logs.tag_no)']}%</td></tr> …我想把计数除以75,再乘以10

首先,我是PHP新手,所以我还在学习。我有一个PHP程序来显示MySQL上经常更改的行数。这是我用来显示计数和百分比的回音-

echo"<tr><td>{$row['Name']}</td><td {$row['COUNT(tag_logs.tag_no)']}/75</td><td>{$row['(COUNT(tag_logs.tag_no)']}%</td></tr>
…我想把计数除以75,再乘以100

我已尝试为字符串指定75,例如-

$perc = 75;
我还尝试了一些变体,只执行除法-

{$row['(COUNT(tag_logs.tag_no)'/75]}%

{$row['(COUNT(tag_logs.tag_no)'/$perc]}%
然而,我运气不好,因为我不确定在哪里插入变量。这是我收到的错误-

警告:在中遇到非数字值 /第16行的Library/WebServer/Documents/count.php


您需要将正在读取的值除以带引号的字符串之外。试试这个:

echo "<tr><td>{$row['Name']}</td><td>{$row['COUNT(tag_logs.tag_no)']}</td><td>" . round($row['COUNT(tag_logs.tag_no)'] / 75 * 100, 2) . "%</td></tr>";

因此,您可以将其称为$row['tag\u cnt',而不是$row['COUNTtag\u logs.tag\u no']。如果您以后更改查询中的表达式,这也将节省您的时间,因为您不必再更改PHP。

我对您随后删除的问题给出的答案有什么问题吗?抱歉,因为我不记得您具体回答了我的问题。你介意提醒我你以前的回答吗?我已经回复了我的答案。非常感谢你的回答。我很抱歉上次没有抽出时间回应。如果你不介意的话,你能简单地解释一下我在最初的代码中做错了什么吗?@olo别担心。原始代码的问题是,所有操作都在引号内进行,而必须在引号外进行数学运算。将{}中的某些内容包含在带引号的字符串中只适用于变量。
echo "<tr><td>{$row['Name']}</td><td>{$row['COUNT(tag_logs.tag_no)']}</td><td>" . round($row['COUNT(tag_logs.tag_no)'] / 75 * 100, 2) . "%</td></tr>";
COUNT(tag_logs.tag_no) AS tag_cnt