A kid from The Ural's
У меня в БД есть поле avatar, в нем хранится ссылка на аватар юзера, которая на странице профиля показывает сам аватар, но если аватара нет, то показывается крестик (типа нет такого изображения). Как сделать так, что в случае отсутствия каких-либо данных в поле avatar в БД, эта переменная не выводилась?
читать дальше
<textarea readonly></textarea></p><p><? include ('connection.php'); ?>
<? if ($_GET['id']) {
$result = mysql_query("SELECT * FROM test WHERE id = {$_GET['id']}"<img alt="b)" src="static.diary.ru/picture/1136.gif" class="smile">;
$row = mysql_fetch_assoc($result);
$page_title = $row[nick];
include('hinf.php');
?>
<body></p><div id="\">
<div id="\">
<p align="left">
<? print "
";
print "<img src="static.diary.ru/spanspan"color: #0000BB">http://%24row%5Bavatar%5D">";
print "
";
print $row[faculty];
print "
";
print "ICQ:
";
print "</img src="static.diary.ru/spanspan"color: #0000BB">http://web.icq.com/whitepages/online?icq=%24row%5Bicq%..." height="17" width="17">";
print $row[icq];
print "
";
print $row[course];
print "
";
print $row[points];
print "
";
print "@дневник:
";
print "<a color: #0000BB">_blank" href="http://http://%24row%5Bdiary%5D">".$row[diary]."</a>";
$page_title = $row[nick];
}
?></p>
</div>
<div id="\">
<h2><? print $row[nick]; ?></h2>
<p>
<? print $row[info]; ?></p><p> </p></div>
</div><p></html>
<? if ($_GET['id']) {
$result = mysql_query("SELECT * FROM test WHERE id = {$_GET['id']}"<img alt="b)" src="static.diary.ru/picture/1136.gif" class="smile">;
$row = mysql_fetch_assoc($result);
$page_title = $row[nick];
include('hinf.php');
?>
<body></p><div id="\">
<div id="\">
<p align="left">
<? print "
";
print "<img src="static.diary.ru/spanspan"color: #0000BB">http://%24row%5Bavatar%5D">";
print "
";
print $row[faculty];
print "
";
print "ICQ:
";
print "</img src="static.diary.ru/spanspan"color: #0000BB">http://web.icq.com/whitepages/online?icq=%24row%5Bicq%..." height="17" width="17">";
print $row[icq];
print "
";
print $row[course];
print "
";
print $row[points];
print "
";
print "@дневник:
";
print "<a color: #0000BB">_blank" href="http://http://%24row%5Bdiary%5D">".$row[diary]."</a>";
$page_title = $row[nick];
}
?></p>
</div>
<div id="\">
<h2><? print $row[nick]; ?></h2>
<p>
<? print $row[info]; ?></p><p> </p></div>
</div><p></html>
PS. я бы рекоммендовал начать приучать себя к более "чистому" коду
Если приучаться, то полностью.
Код такого вида <?=(!empty($row['avatar']))?$row['avatar']:""?>
Просто не переношу)
<php - не является признаком чистого кода.
Это исключительно дело привычки.
А print() - с каких пор он "правильнее"?
~Co0L~
Не знаю, это зависит от того кто читать код будет.
Я такой синтаксис с лёта воспринимаю.
выставит хостер short_open_tag = Off и уже <? не будет распознаваться.
хотя бы с той, что мешать html и php не есть хорошее дело. Потом всё равно приходится переделывать такое.
1. Таких хостеров - в лес.
2. Я вас заверяю - переделывать не приходится. И HTML с PHP будет смешан. Просто надо во всём знать меру. Или вы о разделения кода и вывода? Ну так это весь приведённый скрипт переписать надо. Чтобы яблоки отдельно от помидоров были.
Или вы о разделения кода и вывода?
+1 , шаблоны и ещё раз шаблоны в любых проявлениях)
а код вида <? $x = isset($r) ? 1 : 0 ?> является моим любимым способом поставить в тупик ASPшника или там делфиста )
1. проекты будут поддерживать и после тебя, а значит надо чтобы было как можно меньше косяков, в случаем смены ПО. А написать лишние 3 символа, я думаю не будет убийственным. Или большинство крупных проектов злоупотребляют и пишут именно с php?
2. Считаю, что код и дизайн, с оформлением лучше хранить раздельно. А в понимании когда код в одном месте, а оформление в другом значительно выигрывают по скорости, а уж про внедрении одного в другое я и не говорю.
2. А кто-то спорит? Я приводил решение для конкретного примера.
1. Не отменяли, но зачем думать об этом?
2. В конкретном примере ты явно потерял некоторые значения
1. Сомневаюсь что в будущем кто-то из хостеров будет выключать эту директиву. Как раз из соображений наибольшей совместимости сервиса - хостерам выгодно когда у конечного пользователя меньше вопросов - меньше нагрузка на тех. поддержку. =)
2. У меня изначально весьма криво был показан "проблемный код". Мне кажется, что его совсем недавно "причесали" либо автор, либо модератор. Так что я писал ответ на описанную проблему опираясь на то, что было видно.
Kuroi Kitsune Спор без результата будет, каждый останется при своём.
2. А код вроде не меняли.... или я уже видел изменённый?
Просто если так рассуждать, то тогда скрипты лучше вообще не использовать, ибо есть директива disable_functions и может оказаться что злой админ запретит print, isset и так далее. =)
Скорее всего да.