这句 有什么问题么?不知道错在哪

jy00126240 2012-07-01 09:58:31
<?php
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("test", $con);
$sql1=$result = SELECT `a1` FROM `tab` WHERE 1;
$sql2=$result = SELECT `a3` FROM `tab` WHERE 1;
$result 1=mysql_query($sql1," $con");
$result 2=mysql_query($sql2," $con");
$con1=mysql_fetch_array($result 1);
$con2=mysql_fetch_array($result 2);
echo $con1["con"]/$con2["con"];
//你要用百分比的可心像下面一样,把注释去掉就行了
//$m= $con1["con"]/$con2["con"]*100;
//echo $m."%" ;
?>
...全文
150 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
jy00126240 2012-07-01
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
PHP code

$con = mysql_connect("localhost","root","");
if (!$con) die('Could not connect: ' . mysql_error());
mysql_select_db("test", $con);

$sql = 'SELECT (`a1` / `a3` * 100) AS `per` FROM `ta……
[/Quote]
3q 谢谢了


我做下来后 发现 我刚才提的问有点问题 不是我想要做的那种显示结果 麻烦在改下哈 谢谢了
表tab

a1 a2
王 1
王 3
王 0
王 0
王 2
李 3
李 1
李 1

有王 5行内容 李 3行内容 然后 用各自大于0的数值/各自总行数
王 a2种大于0的数值有3个 李 a2中大于0的有3个
王就是 3/5 李就是 3/3
然后根据百分比 从大往小排列

显示结果是

李 100%
王 60%
乌镇程序员 2012-07-01
  • 打赏
  • 举报
回复
$con = mysql_connect("localhost","root","");
if (!$con) die('Could not connect: ' . mysql_error());
mysql_select_db("test", $con);

$sql = 'SELECT (`a1` / `a3` * 100) AS `per` FROM `tab` WHERE 1 = 1 ORDER BY `per` DESC';
$result = mysql_query($sql, $con);
while($row = mysql_fetch_array($result)) echo $row['per'].'%.<br />';
jy00126240 2012-07-01
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
PHP code

/*
$sql1=$result = SELECT `a1` FROM `tab` WHERE 1;
$sql2=$result = SELECT `a3` FROM `tab` WHERE 1;
$result1=mysql_query($sql1," $con");
$result2=mysql_query($sql2," $con");
$con1=mysq……
[/Quote]
谢谢 能用了
但是这段代码 是总的百分比 我想改成 同行内 a1/a3 有多少行 就显示多少个结果 然后 按照百分比从高到低排列,,怎么改呢
乌镇程序员 2012-07-01
  • 打赏
  • 举报
回复
/*
$sql1=$result = SELECT `a1` FROM `tab` WHERE 1;
$sql2=$result = SELECT `a3` FROM `tab` WHERE 1;
$result1=mysql_query($sql1," $con");
$result2=mysql_query($sql2," $con");
$con1=mysql_fetch_array($result 1);
$con2=mysql_fetch_array($result 2);
echo $con1["con"]/$con2["con"];
*/
//太佩服你了,上面这段代码每一行都有错误!!

$sql1 = 'SELECT `a1` FROM `tab` WHERE 1';
$sql2 = 'SELECT `a3` FROM `tab` WHERE 1';
$result1=mysql_query($sql1,$con);
$result2=mysql_query($sql2,$con);
$con1=mysql_fetch_array($result1);
$con2=mysql_fetch_array($result2);
echo $con1['a1'] / $con2['a3'];
jy00126240 2012-07-01
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
$result 1=mysql_query($sql1," $con");
==》
$result 1=mysql_query($sql1,$con);
[/Quote]
还是不行啊
一起混吧 2012-07-01
  • 打赏
  • 举报
回复
$result 1=mysql_query($sql1," $con");
==》
$result 1=mysql_query($sql1,$con);
jy00126240 2012-07-01
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
$result 1 ===> $result1
$result 2 ===> $result2

变量名只允许是:以字母或下划线打头的若干字母、数字、下划线的组合
[/Quote]
<?php
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("test", $con);
$sql1=$result = SELECT `a1` FROM `tab` WHERE 1;
$sql2=$result = SELECT `a3` FROM `tab` WHERE 1;
$result1=mysql_query($sql1," $con");
$result2=mysql_query($sql2," $con");
$con1=mysql_fetch_array($result 1);
$con2=mysql_fetch_array($result 2);
echo $con1["con"]/$con2["con"];
//你要用百分比的可心像下面一样,把注释去掉就行了
//$m= $con1["con"]/$con2["con"]*100;
//echo $m."%" ;
?>
还是没有反应啊
xuzuning 2012-07-01
  • 打赏
  • 举报
回复
$result 1 ===> $result1
$result 2 ===> $result2

变量名只允许是:以字母或下划线打头的若干字母、数字、下划线的组合
jy00126240 2012-07-01
  • 打赏
  • 举报
回复
自己改了下 成功了

<table><?php
$con = mysql_connect("localhost","root","");
if (!$con) die('Could not connect: ' . mysql_error());
mysql_select_db("test", $con);
mysql_query("SET NAMES gbk");
$sql = 'select a1,round(sum(if(a2>0,1,0))/count(*)*100) as num from tab group by a1 order by num desc';
$result = mysql_query($sql, $con);
while($row = mysql_fetch_array($result))
echo '<tr><td>'.$row['a1'].'</td><td>'.$row['num'].'%.</td></tr>';
?></table>

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧