Заинтересовался этим вопросом. Я создаю сайт, и делаю его динамичным путем внедрения пхп в хтмл код, тобишь: Code: <html> <head><title>Сайт</title></head> <body> Вася ходил по льду и <? if ($abc==1) { echo'подскользнулся'; } else { echo 'упал': } ?> </body> </html> Есть ли другой способ? Или этот самый лучший?
мб заюзать шаблоны? smarty например. Хотя, если сайт не сложный, то с шаблонами особо удобнее не будет.
Частенько так делаю. помог=+ PHP: <? include'inc.php'; /* inc.php <? if ($_GET['x']==1) { $content = 'подскользнулся'; } else { $content = 'упал': } ?> */ ?> <html> <head><title>Сайт</title></head> <body> <table width="500" height="200" border="1" align="center" cellpadding="1" cellspacing="1"> <tr> <td width="539" height="193" align="center">Вася ходил по льду и <?=$content;?></td> </tr> </table> </body> </html>
Code: <html> <head><title>Сайт</title></head> <body> Вася ходил по льду и <?php if ($abc==1): ?> подскользнулся <?php else: ?> упал <?php endif; ?> </body> </html>
Есть еще может не совсем логический,но рабочий вариант: PHP: <? $param = array ( "title" => "sitename" "body" => "text" "foot" => "footertext" ); ?> <html> <head> <title><?=$param['title']?></title> </head> <body> <?=$param['body']?> </body> <?=$param['foot']?> </html> Примерно так,хоть он отличается выполнением и структурой от остальных,но его тоже можно тут применить и думаю ты найдешь правильное решение.
Code: <?php //$html = file_get_contents('page.html'); $html = '<html> <head> <title>{TITLE}</title> </head> <body> {CONTENT} </body> </html>'; $title = 'Error 404'; $text = 'Page not found'; if(!isset($_GET['page'])) { $title = 'Main page'; $text = 'Welcome to site'; } else if($_GET['page'] == 'ip') { $title = 'View ip'; $text = 'Your ip: '.$_SERVER['REMOTE_ADDR']; } $html = str_replace('{TITLE}', $title, $html); $html = str_replace('{CONTENT}', $text, $html); echo $html; ?> Почти шаблон..
Как правильно (проф) внедрять шаблон? Через стр репласе или это делается по другому както через $tpl<=();. Незнаю
таааак...спасибо за ответы suser, помог, но мне такой вариант не по душе. Понял что юзать надо шаблоны, но вот накопилась еще пара вопросов: что за зверь "<br />" и с чем его едят? Можно ли делать так: Code: <? $num=15; if ($num==15) { global $num; $num=10; } echo $num; ?> //скрипт выводит число 10. И, если это неправильно/небезопасно, то как добиться того же эффекта, но другим(безопасным и правильным) путем?
вот я у вас и спрашиваю Ну, раз безопасный значит хорошо. Насчет <br>, я знаю что такое тэг <br>, а что за тэг <br /> незнаю, и в htmlbook.ru не сказанно про этот тэг ничего.
не знаю как ты будешь сайты писать, если ты не слышал про валидацию документов =\ плохо ищешь. на главной странице htmlbook.ru следуй по ссылкам валидации. http://stepbystep.htmlbook.ru/?id=63
тег <br> испольщуется для html документов, <br /> для XHTML документов. дело в том что последний тип требует закрытия всех тегов, даже одиночных. пример: HTML: <meta name=Copyright content=123> XHTML: <meta name="Copyright" content="123" /> я бы не стал использовать xhtml, он не поддерживается в IE 6.0
Пример таблицы HTML: <table border="1" bordercolor="grey" cellspacing="10" cellpadding="0"> <tr> <td>Test</td><td>Test</td> </tr> <tr> <td>Test</td><td>Test</td> </tr> </table> Почему у всех таблиц которые я делаю, рамки ячеек слева и сверху как будто выдавлены? Как это убрать? посмотрите рисунок 1 http://www.htmlbook.ru/html/table.html
как организовать вывод постов постранично, тоесть как в любом форуме, набралось, например, 10 постов, создалась страница "2", и т.д. ??? Я вот думал так: при добавлении поста скрипт проверяет количество уже имеющихся постов в БД и если постов в БД больше n количества создает хтмл страницу и автоматически ее заполняет. Но тогда получаеться проблема, таким образом скрипт будет постоянно создавать страницы, перезаписывая точно такие же старые, что неприемлемо ибо быдло код. Или, могу сделать так, чтобы скрипт проверял количество страниц, и, если страниц хвататет для n постов, то оставлял бы все как есть, а если не хватает, то создавал бы новую страницу. Но и этот вариант мне не нравиться, так как производит много действий. Что посоветуете?
велосипеды уже давно изобретены - я использую Smarty Template Engine всем, кто что-то говорил про "профессиональность" и "непрофессиональность" , рекомендую познакомиться с таким понятием как Design Pattern (Шаблоны проектирования)... Вы поймете насколько унылы ваши советы...