|
|
|
|
|
для: Николай2357
(06.01.2009 в 19:48)
| | Благодарю Николай2357.
Спасибо SportSoft за корректировку.
Буду пробовать. Нужно работать и работать. | |
|
|
|
|
|
|
|
для: SportSoft
(06.01.2009 в 19:40)
| | Действительно...
<?php
$db = mysql_connect ("localhost", "root", "root");
mysql_select_db ("vesty", $db);
$result = mysql_query ("SELECT * FROM news ORDER BY id DESC LIMIT 24", $db);
if (mysql_num_rows($result)>0)
{
echo "<table>";
while ($myrow = mysql_fetch_array ($result))
{
$color = ($myrow['author'])?"red":"blue";
$autor = ($myrow['author'])?"
<tr>
<td><b style='color:red'>".$myrow['author']."</b></td>
</tr>":null;
echo $autor."
<tr>
<td><b style='color:".$color."'>".$myrow['name']."</b></td>
</tr>
<tr>
<td><i><b>".$myrow['date']."</b></i></td>
</tr>
<tr>
<td><i><b> просмотров: ".$myrow['view']."</b></i></td>
</tr>
<tr>
<td><p>".$myrow['m'].$myrow['description']."</p></td>
</tr>
<tr>
<td><a href='news.view.php?id=".$myrow['id']."'><i>подробнее</i></a></td>
</tr>";
}
echo "</table>";
}
else
{
echo "информация отсутствует.";
exit();
}
?>
| Можно еще компактней, но не так наглядно. | |
|
|
|
|
|
|
|
для: Николай2357
(06.01.2009 в 19:34)
| | $myrow['author'] еще нужно куда-нибудь вставить в Ваш код, тогда будет результат тот же и более компактный код. | |
|
|
|
|
|
|
|
для: coras_exe
(06.01.2009 в 18:52)
| | Вот так попробуйте. Это более правильно:
<?php
$db = mysql_connect ("localhost", "root", "root");
mysql_select_db ("vesty", $db);
$result = mysql_query ("SELECT * FROM news ORDER BY id DESC LIMIT 24", $db);
if (mysql_num_rows($result)>0)
{
echo "<table>";
while ($myrow = mysql_fetch_array ($result))
{
$color = ($myrow['author'])?"red":"blue";
echo "<tr>
<td><b style='color:".$color."'>".$myrow['name']."</b></td>
</tr>
<tr>
<td><i><b>".$myrow['date']."</b></i></td>
</tr>
<tr>
<td><i><b> просмотров: ".$myrow['view']."</b></i></td>
</tr>
<tr>
<td><p>".$myrow['m'].$myrow['description']."</p></td>
</tr>
<tr>
<td><a href='news.view.php?id=".$myrow['id']."'><i>подробнее</i></a></td>
</tr>";
}
echo "</table>";
}
else
{
echo "информация отсутствует.";
exit();
}
?>
| Еще один момент - при отсутствии информации в базе, Вы можете получить нотис. | |
|
|
|
|
|
|
|
для: coras_exe
(06.01.2009 в 18:52)
| | Практически одно и тоже в коде встречается то, что выводится в браузер. Можно сделать и покороче.
И я бы предпочтительнее использовал цикл while вместо do-while. | |
|
|
|
|
|
|
| Уважаемые форумчане!
У меня вопрос.
Существует таблица news.
С полями:
-id (Здесь содержится номер статьи)
-name (Здесь содержится название статьи)
-author (Здесь содержится автор статьи)
-date (Здесь дата выхода статьи)
-description (Текст статьи)
-m (Содержит ссылку на изображение)
-view (Количество посещении)
Как правило в этой таблице, иногда не заполняется одно поле. Поле автора. Допустим печатают народный слух.
Необходимо выводить циклически новость с синим заголовком, если нет автора и красным заголовком новость с автором.
<? php
$db = mysql_connect ("localhost", "root", "root");
mysql_select_db ("vesty", $db);
$result = mysql_query ("SELECT * FROM news ORDER BY id DESC LIMIT 24", $db);
if (mysql_num_rows($result)>0)
{
$myrow = mysql_fetch_array ($result);
do
{
$avatar=$myrow['author'];
if (empty($avatar))
{
printf ("
<table>
<tr>
<td><font color='blue'><b> %s </b></font></td>
</tr>
<tr>
<td><i><b> %s </b></i></td>
</tr>
<tr>
<td><i><b> просмотров: %s </b></i></td>
</tr>
<tr>
<td><p> %s%s </p></td>
</tr>
<tr>
<td><a href='news.view.php?id= %s '><i>подробнее</i></a></td>
</tr>
</table>", $myrow['name'],$myrow['date'],$myrow['view'],$myrow['m'],$myrow['description'],$myrow['id']);
}
else
{
printf ("
<table>
<tr>
<td><font color='red'><b> %s </b></font></td>
</tr>
<tr>
<td><i><b> %s </b></i></td>
</tr>
<tr>
<td><i><b> %s </b></i></td>
</tr>
<tr>
<td><i><b> просмотров: %s </b></i></td>
</tr>
<tr>
<td><p> %s%s </p></td>
</tr>
<tr>
<td><a href='news.view.php?id= %s '><i>подробнее</i></a></td>
</tr>
</table>", $myrow['name'],$myrow['author'],$myrow['date'],$myrow['view'],$myrow['m'],$myrow['description'],$myrow['id']);
}
}
while ($myrow = mysql_fetch_array ($result));
}
else
{
echo "информация отсутствует.";
exit();
}
?>
|
Работает стабильно. Ошибок не выдает. Код проверял.
Но вот в чем вопрос. Стойка ли такая конструкция в цикле.
Или может быть лучше использовать switch.
Дело в том, что у меня опыт не совсем большой в этом деле.
Да и как-то создал скрипт. Используя конструкцию if .... else, Принцип скрипта был основан на генерации html кода при определенных условиях.
Вроде все варианты поведения и наличия данных в базе на условия положил. Проверил что находится в переменных. Логическое значение, или число.
А скрипт всеже через какое-то время умер. Мне кажется, где-то глубоко я все же допустил ошибку.
Теперь фобия берет свое над логикой. :)
Подскажите...
Мне очень интересно ваше мнение и опыт. | |
|
|
|
|