I am working on a PHP project and got an error:
CODE:
echo'<table>
<td> ' .( ($approve == 1 AND $decline == 0 )? "<span style='color: green'> approved</span>"
: ($approve == 0 AND $decline == 0 )? "<span style='color: orange'>
Pending </span>" : "<span style='color: red'> Declined </span>"
). ' </td> </table>';
Is the above format for using ternary operator right? because I can not get the right value. please tell me what is the error?
edit:
the error is i can't get approved instead iam getting pending and declined.
Your error in using "()"
$approve = 1;
$decline = 0;
$res = ($approve == 1 AND $decline == 0)
? "<span style='color: green'> Approved</span>"
: (
($approve == 0 AND $decline == 0)
? "<span style='color: orange'> Pending </span>"
: "<span style='color: red'> Declined </span>"
);
echo $res;
The third operand of the first condition must be in parentheses.
For your code using parentheses:
echo '<td>'
. (($approve == 1 AND $decline == 0)
? "<span style='color: green'> Approved</span>"
: (
($approve == 0 AND $decline == 0)
? "<span style='color: orange'> Pending </span>"
: "<span style='color: red'> Declined </span>"
))
. '</td>';