Arhimenrius
31.10.2011, 22:57:41
Czy jest możliwość jakoś osadzić IFA w Echo?
(...)
<td>Status Książki: '.if($row['BoDokiedy'] == '0000-00-00'){echo 'Wolne';}else{echo $row['BoDokiedy'];}.' </td>
(...)
O tego typu osadzenie chodzi.
Nh2003
31.10.2011, 23:02:34
<td>Status Książki: '.(echo ($row['BoDokiedy'] == '0000-00-00') ? 'Wolne' : row['BoDokiedy']).' </td>
edit: błąd w składni, poprawna w poście niżej
http://forum.php.pl/index.php?s=&showt...st&p=910382
Arhimenrius
31.10.2011, 23:06:01
to dalej nie to. zwraca
Parse error: syntax error, unexpected T_ECHO in E:\AppServ\www\ebibliotekarz2\class\search.php on line 68
Natomiast w moim kodzie zwraca:
Parse error: syntax error, unexpected T_IF in E:\AppServ\www\ebibliotekarz2\class\search.php on line 68
gorden
31.10.2011, 23:50:48
echo '<td>Status Książki: '.(($row['BoDokiedy'] == '0000-00-00') ?
'Wolne' : $row['BoDokiedy']).'</td>';
Arhimenrius
31.10.2011, 23:54:26
O dziwo działa, dzięki

teraz jeszcze tylko rozpracować jak to działa
by_ikar
1.11.2011, 00:02:28
Jest to tak zwany operator trójargumentowy, lub jak kto woli, skrócona wersja instrukcji warunkowej. Tutaj sobie więcej poczytaj:
http://phpedia.pl/wiki/TernariuszKod
echo '<td>Status Książki: '.('0000-00-00' == $row['BoDokiedy'] ? 'Wolne' : $row['BoDokiedy']).'</td>';
Arhimenrius
1.11.2011, 00:04:05
o, Tobie też wielce dziękuję