<?php
// Подключаем файл БД
include 'db.php';
$settings = mysql_query ("SELECT `title`, `meta_d`, `meta_k` FROM `settings` WHERE `page`='index'") or die(mysql_error());
// Open if/else (#1)
if ($my_settings = mysql_fetch_assoc ($settings))
{
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title><?php echo $my_settings['title']; ?></title>
<meta name="description" content="<?php echo $my_settings['meta_d']; ?>">
<meta name="keywords" content="<?php echo $my_settings['meta_k']; ?>">
</head>
<p>Последние новости:</p>
<?php
// Close if/else (#1)
}
$news = mysql_query ("SELECT `id`, `title`, `description`, `author`, `date`, `view` FROM `news`") or die(mysql_error());
// Open if/else (#2)
if ($my_news = mysql_fetch_assoc ($news))
{
while ($my_news = mysql_fetch_assoc ($news))
// Open while (#1)
{
echo "<p><a href='view_news.php?id=" . $my_news['id'] . $my_news['title'] . "</a></p>"
. "<p>" . $my_news['description'] . "</p>"
. "<p>Автор: " . $my_news['author'] . " " . $my_news['date'] . " · Просмотров: " . $my_news['view'] . "</p>"
// Close while (#1)
}
// Close if/else (#2)
}
?>
<body>
</body>
</html>
После написания новых "кодов" буду выкладывать в эту тему :)
Спустя 27 минут, 33 секунды (3.02.2011 - 17:37) @dmir@l написал(а):
я бы констукцию While заменил бы на do-while и echo поменял бы на printf
Спустя 1 минута, 11 секунд (3.02.2011 - 17:38) sharki написал(а):
@dmir@l
А ты бы отучился от Попова то =)))
А ты бы отучился от Попова то =)))
Спустя 1 минута, 24 секунды (3.02.2011 - 17:40) sharki написал(а):
Не гость
Ну для начало код сойдет, но уже пытайся разделять логику(PHP код и т.д) от вида(HTML)
Ну для начало код сойдет, но уже пытайся разделять логику(PHP код и т.д) от вида(HTML)
Спустя 1 минута, 46 секунд (3.02.2011 - 17:41) @dmir@l написал(а):
sharki
причем здесь попов? я по нему не учился!
причем здесь попов? я по нему не учился!
Спустя 56 секунд (3.02.2011 - 17:42) Dron19 написал(а):
Цитата (@dmir@l @ 3.02.2011 - 14:37) |
я бы констукцию While заменил бы на do-while и echo поменял бы на printf |
и в двух случаях замедлил бы скрипт...
Спустя 28 секунд (3.02.2011 - 17:43) @dmir@l написал(а):
sharki
просто знаком с его уроками и с людьми которые по этим урокам обучались
просто знаком с его уроками и с людьми которые по этим урокам обучались
Спустя 44 секунды (3.02.2011 - 17:44) Dron19 написал(а):
а нет, только из-за do-while бы замедлил, а в данном случае printf предпочтительнее, но только лишь из-за удобства
Спустя 58 секунд (3.02.2011 - 17:45) @dmir@l написал(а):
Dron19
ну ок...с конструкцией do-while я погоречился (признаю) что while сработает быстрее т.к. сначало проверяет условия а затем только выполняется тело функции))) но вот в echo выводить хтмл это грубо
ну ок...с конструкцией do-while я погоречился (признаю) что while сработает быстрее т.к. сначало проверяет условия а затем только выполняется тело функции))) но вот в echo выводить хтмл это грубо
Спустя 1 минута, 38 секунд (3.02.2011 - 17:46) Dron19 написал(а):
почему грубо, он ссылки лишь выводит, тут ничего страшного в принципе нет
Спустя 1 минута, 39 секунд (3.02.2011 - 17:48) Не гость написал(а):
sharki, Подскажи как это сделать
@dmir@l, "но вот в echo выводить хтмл это грубо" - А как в этом случаи быть?
@dmir@l, "но вот в echo выводить хтмл это грубо" - А как в этом случаи быть?
Спустя 1 минута, 14 секунд (3.02.2011 - 17:49) sharki написал(а):
Не гость
Почитай про MVC ну и курсы можешь пройти http://irbis-team.com/ хуже не станет, и как раз поймешь что это такое, MVC
Почитай про MVC ну и курсы можешь пройти http://irbis-team.com/ хуже не станет, и как раз поймешь что это такое, MVC
Спустя 2 минуты, 47 секунд (3.02.2011 - 17:52) Guest написал(а):
sharki, Спасибо!
Спустя 1 минута, 25 секунд (3.02.2011 - 17:53) @dmir@l написал(а):
printf("
<p><a href='view_news.php?id='%s'>%s</a></p>
<p>%s</p>
<p>Автор: %s | Добавлено: %s | Просмотров: %s</p>
",$my_news['id'],$my_news['title'],$my_news['description'],$my_news['author'],$my_news['date'],$my_news['view']);
Спустя 47 секунд (3.02.2011 - 17:54) @dmir@l написал(а):
Guest
Практичнее)
Практичнее)
Спустя 10 секунд (3.02.2011 - 17:54) Не гость написал(а):
@dmir@l, как на С что ли?
Спустя 4 минуты, 24 секунды (3.02.2011 - 17:59) @dmir@l написал(а):
знаешь с?
Спустя 2 минуты, 39 секунд (3.02.2011 - 18:01) Не гость написал(а):
@dmir@l, нет ну так коды видел
Спустя 1 минута, 48 секунд (3.02.2011 - 18:03) @dmir@l написал(а):
php это си подобный язык) так что может быть
Спустя 2 минуты, 39 секунд (3.02.2011 - 18:06) Не гость написал(а):
@dmir@l, ну да
Спустя 1 час, 3 минуты, 34 секунды (3.02.2011 - 19:09) Gradus написал(а):
@dmir@l,какое практичнее , какое грубо ? всё совсем наоборот
Не гость, предпочтительней писать echo , но если вам удобно то пишите printf, но это лишь нарушит валидность в нынешних "стандартах программирования"
а это что за ужас?)
зачем вообще здесь проверка , да ещё такая
просто пишите
Не гость, предпочтительней писать echo , но если вам удобно то пишите printf, но это лишь нарушит валидность в нынешних "стандартах программирования"
а это что за ужас?)
if ($my_news = mysql_fetch_assoc ($news))
{
while ($my_news = mysql_fetch_assoc ($news))
// Open while (#1)
{
зачем вообще здесь проверка , да ещё такая
просто пишите
while ($my_news = mysql_fetch_assoc ($news))
....
Спустя 3 минуты, 13 секунд (3.02.2011 - 19:12) twin написал(а):
Цитата |
printf(" <p><a href='view_news.php?id='%s'>%s</a></p> <p>%s</p> <p>Автор: %s | Добавлено: %s | Просмотров: %s</p> ",$my_news['id'],$my_news['title'],$my_news['description'],$my_news['author'],$my_news['date'],$my_news['view']); |
Чушь.
Спустя 9 минут, 42 секунды (3.02.2011 - 19:22) @dmir@l написал(а):
twin
Поясни пожалуйста почему чушь?
Поясни пожалуйста почему чушь?
Спустя 11 минут, 22 секунды (3.02.2011 - 19:34) Gradus написал(а):
@dmir@l,а ты попробуй вывести таким способом ну 10 переменных, а потом перепиши html код.Вот веселье будет глазами бегать туда сюда и высчитывать тут ли нужная переменная выводиться или нет, а если больше переменных ? а если этим заниматься будет не создатель этого "кода" ?
Спустя 7 минут, 28 секунд (3.02.2011 - 19:41) Не гость написал(а):
Вопрос насчет отступов от края то что нужно отступать именно пробелами, а когда переходишь на новую строку (методом ENTER) и курсор уже не прижат к левому краю, это нормально, можно так оставить? Или стереть и поставить пробелы?
Спустя 8 минут, 48 секунд (3.02.2011 - 19:50) Gradus написал(а):
Не гость, делай как самому бы работать было удобней лично для меня удобнее читать когда с пробелами (или табами) и переводом строк
Спустя 1 минута, 6 секунд (3.02.2011 - 19:51) @dmir@l написал(а):
Gradus
Я об этом не задумывался
только вот непонятно почему чушь то?
Я об этом не задумывался
только вот непонятно почему чушь то?
Спустя 1 минута, 13 секунд (3.02.2011 - 19:52) @dmir@l написал(а):
может мануал старый ?
Спустя 6 минут, 58 секунд (3.02.2011 - 19:59) twin написал(а):
Цитата |
twin Поясни пожалуйста почему чушь? |
Ну уже Gradus написал. Продолжу, если мало.
Особое веселье начинается, когда в тексте HTML встречаются проценты.
Про подсветку тут речи нет, она вообще никого не интересует. Ведь очень практично искать среди этих красных каракулей %s а потом считать их и переменные.
А обрабатывать переменные не нужно? И предствь себе такую практичную портянку:
printf("
<p><a href='view_news.php?id='%s'>%s</a></p>
<p>%s</p>
<p>Автор: %s | Добавлено: %s | Просмотров: %s</p>
",$my_news['id'], htmlspecialchars($my_news['title']),htmlspecialchars($my_news['description']),
htmlspecialchars($my_news['author']),$my_news['date'], htmlspecialchars($my_news['view']));
Ну и то, что это семантическая ошибка, вообще не нужно говорить. Заставить функцию делать несвойственные ей вещи и считать это практичным... Ну давай тогда вместо 2 + 2
$a = 2;
$b = 2;
echo ($a + $b);
будем юзать это:
$a = 2;
$b = 2;
$arr = array($a, $b);
$result = compact('a', 'b');
echo array_sum($result);
результат же один.
Спустя 11 минут, 46 секунд (3.02.2011 - 20:11) @dmir@l написал(а):
twin
Теперь понял! тогда принтф в данном случае лучше не использовать
Теперь понял! тогда принтф в данном случае лучше не использовать
Спустя 8 минут, 39 секунд (3.02.2011 - 20:19) alex12060 написал(а):
if ($my_news = mysql_fetch_assoc ($news)) {
Я вот этого не понимаю, зачем?
Спустя 8 минут, 16 секунд (3.02.2011 - 20:28) inpost написал(а):
alex12060
Потому что у нас больше принято проверку череz
if(mysql_num_rows > 0).
Потому что у нас больше принято проверку череz
if(mysql_num_rows > 0).
Спустя 7 минут, 15 секунд (3.02.2011 - 20:35) alex12060 написал(а):
Ответ понял, только не въехал. это был сарказм?)
Спустя 11 минут, 57 секунд (3.02.2011 - 20:47) inpost написал(а):
alex12060
В таблице может не быть данных, поэтому TRUE - если были строки, и FALSE - если не было. Вот как у нас:
В таблице может не быть данных, поэтому TRUE - если были строки, и FALSE - если не было. Вот как у нас:
if(mysql_num_rows > 0)
{
ТУТ ДЕЙСТВИЯ
}
else
{
echo 'Не было строк в таблице по заданным критериям';
}
Спустя 4 минуты, 32 секунды (3.02.2011 - 20:51) alex12060 написал(а):
хах, ну да)
Значит у него своя методика)
Значит у него своя методика)