Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.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
If Elseif Else在PHP中基于MYSQL查询结果_Php_Mysql_Sql - Fatal编程技术网

If Elseif Else在PHP中基于MYSQL查询结果

If Elseif Else在PHP中基于MYSQL查询结果,php,mysql,sql,Php,Mysql,Sql,有一张显示每季度价值的表格 +--------------+-------------------+ | Quarter | Value | +--------------+-------------------+ |2012.Q4 |17000 | |2013.Q1 |18000 | |2013.Q2 |19000 |x |2013.Q3

有一张显示每季度价值的表格

+--------------+-------------------+ | Quarter | Value | +--------------+-------------------+ |2012.Q4 |17000 | |2013.Q1 |18000 | |2013.Q2 |19000 |x |2013.Q3 |26600 |x +--------------+-------------------+ +--------------+-------------------+ |四分之一价值| +--------------+-------------------+ |2012年第4季度| 17000| |2013年第一季度| 18000| |2013年第二季度| 19000 | x |2013年第三季度| 26600 | x +--------------+-------------------+ 得到了一个mysql查询来计算最后两行之间的差异

本例中mysql的结果为:7600

我想根据结果显示一个图标(基于fontawesome的字体图标)

如果结果>0,我想用图标插入符号向上显示结果
如果结果=0,我想用右插入符号显示结果
如果结果<0,我想用图标插入符号向下显示结果
因此,我添加了以下php代码:

<?php
   $reponse=mysql_query("My SQL Query");

if ($reponse > 0) {
echo "<h1 class=\"uk-text-center uk-margin-bottom-remove\">".(mysql_result($reponse, 0))."<i class=\"uk-icon-caret-up\"></i></h1>";
}

elseif ($reponse == 0) {
echo "<h1 class=\"uk-text-center uk-margin-bottom-remove\">".(mysql_result($reponse, 0))."<i class=\"uk-icon-caret-up\"></i></h1>";
}

else {
echo "<h1 class=\"uk-text-center uk-margin-bottom-remove\">".(mysql_result($reponse, 0))."<i class=\"uk-icon-caret-down\"></i></h1>";
}

?>

无论结果如何,即使是负数或等于零,我也只得到第一个选择,显示图标插入符号向上

好吧,我是php的新手

我先谢谢你


注意。

首先,mysql_*函数已弃用,您需要使用PDO或MySQLi进行新的开发

其次,正如文档所说,
mysql\u query
返回一个资源。那一页上有很多关于如何使用它的例子

执行查询后,必须获取一行。(编辑:我看到您已经知道了这一点,因为您将在下一行中使用
mysql\u result
-您只需在尝试进行比较之前使用它即可。)

$row=mysql\u fetch\u assoc($reponse)
然后
$row
将是一个值数组。由于您尚未显示您选择的实际字段名,我无法告诉您下一步要做什么,但请阅读文档

现在,一旦获得了代码集,就可以大大简化HTML的打印

$amount = mysql_result($reponse, 0);

if($amount > 0){
    $caret = 'up';
}else if($amount == 0){
   $caret = 'right';
}else{
   $caret = 'down';
}
echo '<h1 class="uk-text-center uk-margin-bottom-remove">'.$amount.'<i class="uk-icon-caret-'.$caret.'"></i></h1>';
$amount=mysql\u结果($response,0);
如果($amount>0){
$caret='up';
}否则,如果($amount==0){
$caret='右';
}否则{
$caret='down';
}
回显“.$amount.”;

最后一行也可以是
echo“{$amount}”它很有魅力。顺便说一句,非常感谢你的建议,我是php的新手,所以我正在学习基本概念,即使它不推荐。这只是切换到PDO和php框架之前的第一步。再次感谢大家。当做
$amount = mysql_result($reponse, 0);

if($amount > 0){
    $caret = 'up';
}else if($amount == 0){
   $caret = 'right';
}else{
   $caret = 'down';
}
echo '<h1 class="uk-text-center uk-margin-bottom-remove">'.$amount.'<i class="uk-icon-caret-'.$caret.'"></i></h1>';