Различия
Здесь показаны различия между двумя версиями данной страницы.
Следующая версия | Предыдущая версия | ||
fullcircle:23:веб-разработка_ч4 [2010/04/15 17:02] создано |
fullcircle:23:веб-разработка_ч4 [2010/04/17 20:29] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ======HOW-TO: Веб-разработка. Часть 3 ====== | + | ======HOW-TO: Веб-разработка. Часть 4 ====== |
- [[..:20:веб-разработка_ч1|Веб-разработка. Часть 1]] | - [[..:20:веб-разработка_ч1|Веб-разработка. Часть 1]] | ||
Строка 12: | Строка 12: | ||
</style> | </style> | ||
+ | Языки программирования предназначены для того, чтобы автоматизировать выполнение задач и сделать жизнь проще. PHP не является исключением. | ||
+ | |||
+ | Однако PHP, каким бы он ни был хорошим, простым и широко используемым (на приблизительно 20 миллионах компьютерах и таких сайтах, как Facebook, Wikipedia (MediaWiki), Digg, Wordpress, Yahoo! и многих других), это не единственный язык, который применяется в интернете. Не является он также и лучшим. | ||
+ | |||
+ | Для веб-разработки существует множество языков программирования, включая Python, Perl, Ruby (и Ruby on Rails), Java (JSP), ASP, ASP.net и др. Вы можете даже погрузиться в таинства доступного лишь избранным программирования на C, C++ или другом низкоуровневом языке. | ||
+ | |||
+ | Но следует понимать, что каждый язык отличается от остальных, и все они используются для разных целей и задач. Некоторые являются процедурными, другие – объектно-ориентированными, третьи – смешанными. Если вы решите изучить Python, не медлите! Я очень советую это сделать. Кроме того, ваше резюме станет выглядеть ещё | ||
+ | лучше, не так ли? Одни работодатели примут вас только с опытом написания программ на ASP.net., другим же будет достаточно знания PHP и Python. Выясните, на чём вам удобнее писать, а также что требуется другим людям (если вам интересны деньги!). | ||
+ | |||
+ | ===== Ваш первый веб-сайт ===== | ||
+ | |||
+ | Считая, что вы уже сделали свой первый сайт после прочтения второй статьи из серии о веб-разработке в 21-м | ||
+ | выпуске Full Circle, мы продолжим работать над файлом «index.html», который мы сохранили в локальной веб-папке. | ||
+ | |||
+ | ===== Делаем сайт динамическим ===== | ||
+ | |||
+ | Редактирование большого числа страниц может вскоре стать очень неудобным, если, к примеру, вы хотите добавить на сайт страницу «birds.html» или обновить все страницы, потому что настал 2010 год. PHP позволяет сделать страницу динамической, разделив её на подключаемые секции. | ||
+ | |||
+ | Для начала выделим CSS в отдельный файл. Это не обязательное, но рекомендуемое правило, и следовать ему стоит | ||
+ | практически для любой части сайта (CSS, javascript, PHP и всё, что повторяется на сайте несколько раз). | ||
+ | <code css> | ||
+ | *{ | ||
+ | color: #ececec; | ||
+ | font-family: 'DejaVu Sans', sans-serif; | ||
+ | } | ||
+ | body{ | ||
+ | background-color: #212122; | ||
+ | } | ||
+ | #footer{ | ||
+ | border-top: 1px solid #ccc; | ||
+ | } | ||
+ | #footer p{ | ||
+ | font-size: 80%; | ||
+ | text-align: center; | ||
+ | } | ||
+ | </code> | ||
+ | Создайте новую папку «css» и сохраните в неё этот код под именем «screen.css». | ||
+ | |||
+ | В файле index.html удалите | ||
+ | строки: | ||
+ | <code html><style type="text/css"></style> | ||
+ | </code> | ||
+ | и замените их на: | ||
+ | <code html><link rel="stylesheet" type="text/css" href="css/screen.css" /></code> | ||
+ | |||
+ | Вы только что успешно отделили CSS от HTML. | ||
+ | |||
+ | Теперь, чтобы сделать оставшуюся часть сайта более модульной, перенесите весь код, начиная со строки «<!DOCTYPE>», заканчивая «<body>», в файл «header.php», который поместите в новую папку «inc». | ||
+ | |||
+ | Так же поступите с фрагментом от «<p>Menu:</p>» до «</ul>», поместив его в файл «menu.php» в ту же папку. | ||
+ | |||
+ | Наконец, создайте файл «footer.php» в папке «inc». Его содержимое должно начинаться с «<div id="footer">» и заканчиваться строкой «</html>». | ||
+ | |||
+ | Скопируйте оставшееся содержимое до тега «</div>», который располагается перед «<div id="footer">», и поместите в файл «index.php», который должен быть непосредственно в локальной веб-папке, рядом с файлом «index.html». Файл «index.html» нам больше не нужен, его можно удалить. | ||
+ | |||
+ | Сейчас ваша локальная веб-папка должна содержать следующие файлы и папки: | ||
+ | <code> | ||
+ | localhost/ | ||
+ | css/ | ||
+ | screen.css | ||
+ | inc/ | ||
+ | footer.php | ||
+ | header.php | ||
+ | menu.php | ||
+ | index.php | ||
+ | </code> | ||
+ | |||
+ | Теперь добавьте в самое начала файла «index.php» следующие строки: | ||
+ | <code php> | ||
+ | <?php | ||
+ | include ('inc/header.php'); | ||
+ | ?> | ||
+ | </code> | ||
+ | |||
+ | там, где было меню, вставьте: | ||
+ | <code php> | ||
+ | <?php | ||
+ | include ('inc/menu.php'); | ||
+ | ?> | ||
+ | </code> | ||
+ | |||
+ | и этот код в самый конец файла: | ||
+ | <code php> | ||
+ | <?php | ||
+ | include ('inc/footer.php'); | ||
+ | ?> | ||
+ | </code> | ||
+ | |||
+ | Проницательный читатель заметил: всё, что мы сделали, это просто перенесли заголовок, меню и нижнюю часть страницы в отдельные файлы, так же мы поступили с CSS. А потом включили эти файлы в «index.php». | ||
+ | |||
+ | Также вы познакомились с первым кодом на PHP и первой функцией (функция include()). При написании кода на PHP очень важно, чтобы: | ||
+ | |||
+ | - имена файлов заканчивались на .php и | ||
+ | - код на PHP находился внутри PHP-тегов «<?php ?>». | ||
+ | |||
+ | Для этих правил существуют исключения (как и для всего остального, чего я успел коснуться), но этим двум советам стоит следовать для повышения безопасности, удобства и согласованности. | ||
+ | |||
+ | <code php> | ||
+ | <?php | ||
+ | include ('inc/header.php'); | ||
+ | ?> | ||
+ | <div id="content"> | ||
+ | <?php | ||
+ | switch($_GET['page']) | ||
+ | { | ||
+ | default: | ||
+ | case 'home': | ||
+ | echo '<h1>Мой первый сайт!</h1><p>Привет! Добро пожаловать на мой первый сайт! | ||
+ | Не ругайте меня, я только что начал изучать веб-разработку, | ||
+ | но скоро я сделаю ещё много чего!</p>'; | ||
+ | break; | ||
+ | case 'dogs': | ||
+ | echo '<p>Я люблю собак!</p>'; | ||
+ | break; | ||
+ | case 'cats': | ||
+ | echo '<p>Я люблю кошек!</p>'; | ||
+ | break; | ||
+ | case 'lizards': | ||
+ | echo '<p>Я люблю ящериц!</p>'; | ||
+ | break; | ||
+ | } | ||
+ | ?> | ||
+ | <?php | ||
+ | include ('inc/menu.php'); | ||
+ | ?> | ||
+ | </div> | ||
+ | <?php | ||
+ | include ('inc/footer.php'); | ||
+ | ?> | ||
+ | </code> | ||
+ | |||
+ | Если вы перейдёте на [[ http://localhost/index.php ]], то не заметите никакой разницы между предыдущим файлом «index.html» и «index.php», который мы создали только что. | ||
+ | |||
+ | ===== Конструкция switch языка PHP ===== | ||
+ | |||
+ | В заключении этого введения в PHP я расскажу о конструкции switch. | ||
+ | |||
+ | Сначала поместите код с предыдущей страницы в файл «index.php» и удалите всё остальное. | ||
+ | |||
+ | Конструкция switch использует переменную «page» из строки запроса (всё, что расположено в URL после вопросительного знака (?), считается строкой запроса). | ||
+ | |||
+ | Правильно сформированная строка запроса выглядит так: http://example.com?variable=5. Мы вскоре её используем. | ||
+ | |||
+ | Также обратите внимание на условия, которые принимает конструкция switch: «home», «dogs», «cats» и «lizards». То, что написано в условии «default»,будет выполнено, если не подойдёт ни одно другое условие (например, http://localhost/index.php?page=birds). Это не самый лучший способ для обработки неверной строки запроса, но для начала он подойдёт. | ||
+ | |||
+ | Теперь измените код в файле inc/menu.php, чтобы он выглядел так: | ||
+ | <code html> | ||
+ | <p>Menu:</p> | ||
+ | <ul> | ||
+ | <li><a href="index.php?page=home">Home</a></li> | ||
+ | <li><a href="index.php?page=dogs">Dogs</a></li> | ||
+ | <li><a href="index.php?page=cats">Cats</a></li> | ||
+ | <li><a href="index.php?page=lizards">Lizards</a></li> | ||
+ | </ul> | ||
+ | </code> | ||
+ | |||
+ | Теперь мы можем передавать файлу «index.php» переменную «page» , содержащую «home», «dogs», «cats» или «lizards», в зависимости от нажатой ссылки. Теперь можно свободно переходить между страницами, а их содержимое будет меняться. Поэкспериментируйте самостоятельно. Добавьте пятую страницу с названием «birds» и | ||
+ | убедитесь, что она работает. Пожалуйста, учтите, что это очень краткое введение в PHP. При разработке веб-сайтов, которые используют include, необходимо учитывать некоторые вопросы безопасности, такие как прямой доступ ко включаемым файлам (файлы в нашей папке «inc»). Но этой темы я коснусь следующий раз. | ||
+ | |||
+ | <note tip>**Brett Alton** – энтузиаст Ubuntu, технический специалист и разработчик ПО из Торонто, Канада</note> | ||
+ | |||
+ | ---- | ||
+ | <style center> | ||
+ | - [[..:20:веб-разработка_ч1|Веб-разработка. Часть 1]] | ||
+ | - [[..:21:веб-разработка_ч2|Веб-разработка. Часть 2]] | ||
+ | - [[..:22:веб-разработка_ч3|Веб-разработка. Часть 3]] | ||
+ | - [[..:23:веб-разработка_ч4|Веб-разработка. Часть 4]] | ||
+ | |||
+ | ---- | ||
+ | |||
+ | //[[..:23|К содержанию номера]]// | ||
+ | |||
+ | //[[:fullcircle|К архиву журналов]]// | ||
+ | </style> | ||
+ | |||
+ | {{tag>howto php html css Программирование Full_Circle}} |