如果field1>回波字体绿色域2?

时间:2011-06-03 16:30:10

标签: php

我做了一些研究和编码才能完成这个功能:

 (if field1 > field 2 echo font color=green else if field 2 > field 1 echo fontcolor=green else echo font black

(双绿有其目的)

   $query = "SELECT *  FROM table WHERE CATEGORY='15' ";
$result = mysql_query($query); 

 If ($result [field1] > $result [field2] )

 echo "    <style font="green"/>   This category is green </style> "

else if ($result [field1] > $result [field2] )


echo "    <style font="green"/>   This category is green </style> "

else

echo "    <style font="black"/>   This category is black </style> "

这是怎么做到的?有什么错误吗?

6 个答案:

答案 0 :(得分:3)

这就是你的代码应该是这样的:

$sql = "SELECT *  FROM table WHERE CATEGORY='15' ";
$query = mysql_query($sql);
$result = mysql_fetch_assoc($query);

if($result['field1'] > $result['field2']){
    echo '<span style="color:green;">This category is green </span>';
}
else{
    echo '<span style="color:black;">This category is black</span>';
}

我建议你在提出这样的问题之前先阅读一些关于PHP的内容。

答案 1 :(得分:1)

怎么样......

if ($result['field1'] != $result['field2'])
  echo '<span style="color:green;">This category is green</span>';
else
  echo '<span style="color:black;">This category is black</span>';

自说1>22>1not equal相同

- 更短:

$color = ($result['field1'] != $result['field2'] ? 'green' : 'black';
printf('<span style="color:%s;">This category is %s</span>',$color,$color);

答案 2 :(得分:0)

使用

<span style="color:green;">This category is green</span>

<span style="color:black;">This category is black</span>

答案 3 :(得分:0)

有一些错误:

$query = "SELECT *  FROM table WHERE CATEGORY='15' ";
$result = mysql_query($query); 
// 1. you need the row, not the result
$row = mysql_fetch_assoc($result);

if ($row['field1'] > $row['field2'])
{
    // 2. style tag is not to be used here, try span, and close the lines with ;
    echo "    <span style="color: green;">This category is green </span>";
}
// 3. here you should test for "lest than"
elseif ($row['field1'] < $row['field2'])
{
    echo "    <span style="color: green;">This category is green </span>";
}
else
{
    echo "    <span style="color: black;">This category is black </span>";
}

答案 4 :(得分:0)

不,这与你如何做到这一点甚至没有关系。在PHP中执行mysql查询后,您将始终必须获取结果。这就是你的代码看起来的样子(我假设你的查询将返回一个结果,而不是多个):

$query = "SELECT *  FROM table WHERE CATEGORY='15' ";
$res = mysql_query($query) or die(mysql_errno();

$arr = mysql_fetch_assoc($res);

If ($result['field1'] > $result ['field2'])
{
   echo '<span style="color: green;"/>This category is green</span>';
}
else if ($result['field1'] > $result['field2'])
{
    echo '<span style="color: green;"/>This category is green</span>';
}
else
{
    echo '<span style="color: black;"/>This category is black </span>";
}

所以,总而言之,查询没有被提取,条件语句没问题,但是,因为你似乎对此不熟悉,如果你没有正确关闭它们并且HTML不正确(看起来像CSS)。

如果您需要更多帮助,请告诉我,我可以帮助您。

答案 5 :(得分:0)

当你的mysql调用从数据库返回一些东西时,它不能立即被操纵。这是因为查询返回“资源”,而不是数组。首先必须使用mysql_fetch_array($ result)将资源转换为数组,然后才能通过该数组获取所需的信息。然后,您可以使用括号内的列名来获取任何特定行中所需的数据。

您的代码应该如下所示:

$sql = "SELECT *  FROM table WHERE CATEGORY='15'";
$query = mysql_query($sql);//$query is now the resource
$result = mysql_fetch_assoc($query); //$result is now an array built from the resource

现在,你在逻辑上有很多错误。正如其他人所指出的那样,第一和第二个if语句是相同的。既然您实际上能够检查数据,则需要正确编写if语句。像这样:

if($result['field1']>$result['field2']){
echo "<span style='color:green;'>   This category is green </span>";
}else{
echo "<span style='color:black;'> This category is black </span>";
}

请注意,当您回显任何内容后,在完成回显之后,必须使用分号;将其关闭。 此外,如果您想要修复这些特定单词的样式,最好只使用<span>标记并将其放在其中。 此外,当您在标记内声明样式时,必须以style='characteristic:value;'

的形式执行此操作

最后,当你在"的echo语句中时,你必须使用单引号',否则它会关闭回声。

希望我的小说有所帮助! :P

相关问题