Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 8
На сайте нет зарегистрированных пользователей

Пользователей: 13,372
новичок: vausoz
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Двунаправленный динамический список на Delphi + Блок схемы
Поиск пути в графе заданном списками инцедентности на Turbo Pascal
Расчет размера дохода на одного человека в Turbo Pascal

Введение в PHP
"CHIP / Россия"



Как и любую вещь в этом мире, сайт можно автоматизировать. И не просто
автоматизировать, а дать самому себе возможность, больше никогда не заглядывать
в его FTP-недры, и лишить процесс администрирования веб-сайта большинства
затрачиваемых физических усилий. Язык PHP в дает, просто, огромные возможности
по созданию “движка” для веб-сайта, и при этом, его синтаксис очень прост.
Впрочем, обо всем по порядку.

Что, собственно, требуется для создания хорошей системы администрирования
веб-сайта? Совсем немного – сервер, который бы разрешал использование
PHP-скриптов, и знание самого языка PHP, на котором мы и будем писать
“информационный двигатель”.

Так же, желательно иметь в своем распоряжении сервер Apache (http://apache.org),
и интерпретатор PHP (http://www.php.org) - и то и другое, распространяется
совершенно бесплатно, и свободно доступно для загрузки из сети.

Итак, начнем?

Введение в PHP



Сам язык программирования PHP, без интернета существовать не может. Он попросту
не нужен на обычном компьютере – второй Windows на нем не напишешь, и ничего
вразумительного и полезного – тоже. Разве что, чат для внутренней сети – это да.
Но за то в интернете, PHP считается одним из самых мощных языков, который стоит
на одной линейке, с тем же Perl’ом.

PHP является удобным, и в то же время достаточно простым языком. И уж если вам
доводилось писать программы на С или C++, c изучением PHP у вас и вовсе не
возникнет трудностей, так как синтаксис очень похож.

Любая (даже самая маленькая) программа на PHP, должна начинаться с оператора

<?php




и заканчиваться оператором

?>




Если эти операторы не будут проставлены в начале и конце программы, сервер
который будет обрабатывать запросы, не распознает код.

В PHP, как и в любом другом языке программирования, присутствует возможность
вставки комментариев – без этого никак. Комментарии порой выручают самого же
разработчика, не говоря уже о пользователях, которые возможно, будут
конфигурировать готовую программу - они не дают запутаться в структуре
программного кода, и делают его более читаемым. Текст комментариев в программах
на PHP существует двух видов – однострочный, и многострочный. Соответственно,
существует и два типа указания комментариев. Пример:

/* многострочный

комментарий */




и

// однострочный комментарий




В комментариях может находиться любой текст, будь то даже код PHP, или
“китайские колы”. В любом случае – сервер при обработке программы опускает все
строки, что отделены символами комментариев.

Переменные в программах на PHP, отделяются символами $. Например, в программе:

$name = “Мир”;




переменная $name будет равна значению Мир. А вывести значение переменной на
экран можно двумя способами:

echo $name;




и

print $name;

Ну, а код программы, которая выводила бы что-нибудь, вроде “Привет Мир!”, будет
выглядеть вот так:



$hello = "Привет";

$spacer = " ";

$name = "Мир";

$din = "!";

echo $hello;

echo $spacer;

echo $name;

echo $din;






Причем, как вы, наверное, уже догадались, имена переменных вещь совершенно не
подчиненная логике – например, имя переменной $din совершенно не соответствует
ее значению. Главное, не перепутать имена переменных при построении программы.

Основными элементами любой программы, являются переменные. Их иногда бывает даже
больше чем исполняемого кода программы. А когда делается очень большой скрипт,
который содержит большое количество файлов, часто приходится использовать одну и
ту же переменную в каждом файле. А если значение этой переменной вдруг
понадобится изменить, тогда придется перелопачивать каждый файл, редактируя его?
Неплохо было бы, если бы можно было вывести все переменные в один
конфигурационный файл, не так ли? Так и сделаем. На примере нашей программы,
вынесем все переменные в файл configuration.php3. А в текущем файле, оставим
только программу, которая теперь превратится в вот такой код:



require(“configuration.php3”);

echo $hello;

echo $spacer;

echo $name;

echo $din;






Теперь наша программа ищет в самой себе запрашиваемые переменные, а если таковых
найдено не будет, она отправится в путешествие на указанный в первой строчке
файл.

Но главным преимуществом PHP, является возможности вставки кода в web-страницу,
наряду со стандартным HTML-кодом. Это делает язык PHP очень гибким, и в то же
время необычайно удобным. В этом, он может соперничать разве что с технологией
ASP (Active Server Pages), но она, в отличии от рассматриваемого языка, может
использоваться только на серверах, базирующихся на основе Windows NT.

Первый движок



Теперь вы уже имеете представление о PHP, и можно сделать что-то более полезное,
нежели программу, которая выводит банальное “Привет Мир!”. Займемся разработкой
нашего движка.

Для начала, напишем программу, которая будет добавлять некоторые статьи в базу
текстов, и выводить любой из указанных файлов в одном шаблоне. Все это выглядит
очень сложным, но на самом деле очень просто. Сначала напишем на HTML форму,
откуда введенные данные будут передаваться программе на обработку:



<form method="POST" action="add_text.php3">

<p>Название текста:<br>

<input type="text" name="text_name" size="20"><br>

Текст:<br>

<textarea rows="12" name="text" cols="53"></textarea><br>

<input type="submit" value="Submit" name="Submit"></p>

</form>



Теперь напишем программу, которая введенные в форму данные обработает должным
образом, и сохранит в папку texts:



<?php

$filename = "$name"; /* указываем с каким именем будет сохранен файл. Именем
файла, будет служить название текста, введенное в соответствующее поле формы */

$fp = fopen("texts/$text_name.txt","w+") /* открываем файл, а если он не найден,
директивой “w+” указываем что его надо создать */

fputs($fp, "<b>$text_name</b><br>$text"); /* сохраняем с учетом
HTML-форматирования текст в базу текстов */

fclose($fp); /* закрываем файл по завершению всех работ */

?>






Вот и все – эта программа сохранит все введенные в форму данные. Теперь нам
нужно их вывести. Здесь на помощь тоже приходит PHP. Зачем же нам создавать
огромное количество веб-страниц, для каждого документа хранящегося в базе
текстов, если любой из них можно вывести в одном шаблоне?

Создаем HTML-файл, и в месте, где предполагается вывод текстов, пишем следующий
PHP-код:



<?

$filename = "read/".$open .'.txt'; // открываем указанный текст

if (file_exists ($filename)): // если такой файл существует…

$fd = fopen ($filename, "r"); // …открываем его…

$showtext = fread ($fd, filesize ($filename)); // и считываем в переменную
$showtext

fclose ($fd); // закрываем файл

echo ($content); // выводим текст если файл найден, а если нет…

else: echo ("Указанный текст отсутствует в базе текстов."); // пишем что такого
файла нету

endif; // конец цикла, и конец программы

?>






Все так – подумает читатель – но как же указать файл? Очень просто. Предположим,
что приведенный выше код, находится в файле read.php3. В строке броузера, просто
пишем read.php3?open=имя_файла_без_расширения.

Думаю, вряд ли кто-то станет спорить, что такой способ очень удобен. Интересно,
что в файле может храниться не обязательно текст – это может быть и HTML-код, и
какой-то другой скрипт… словом, все, что только может разобрать броузер или
сервер.
Опубликовал Kest October 26 2008 12:42:53 · 1 Комментариев · 7165 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
foreach July 02 2011 12:08:24
Могу не согласиться с автором. Не стоит вводить читателей в заблуждение. PHP прекрасно работает без интернета. Причем на локальной машине. Может быть Автор слшал о такой технологии как PHP-Gtk+? Он и под Виндой оже работает. А в семействе линуксов почти половина пользовательских интерфейсов на писана на нем.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
ЯЗЫК ПРОГРАММИРОВ...
Панель Наша Кнопка
Распознавание иде...
CS:Source - монит...
Работа с базами д...
PrevInst
База предприятий ...
C++ Builder в за...
ScrollCredit
WinAmp
Самоучитель C++
UmEdit
Swat [Исходник на...
Программирование ...
PHP/MySQL для нач...
DateEdit
Еext Editor
JanReplace
WinPopup
Assistant

Топ загрузок
Приложение Клие... 100793
Delphi 7 Enterp... 98016
Converter AMR<-... 20298
GPSS World Stud... 17059
Borland C++Buil... 14239
Borland Delphi ... 10373
Turbo Pascal fo... 7390
Калькулятор [Ис... 6080
Visual Studio 2... 5228
Microsoft SQL S... 3674
Случайные статьи
Пишем скрипт госте...
ASSIGN (ПРИСВОИТЬ)
Создание стилевого...
Разработка Web-фор...
Непосредственная а...
Предварительные св...
Датчики приближения
Вопросы руководств...
Five Balls на Stra...
Постановка задачи ...
Управление устройс...
Вызов функций, нап...
Диапазоны IP-адрес...
Событие OnDragDrop
Специализированные...
макроопределение д...
Parimatch
Современные слот-а...
Головной интерфейс...
Где можно приобрес...
О спецификации lOO...
ИЗУЧЕНИЕ ПРОГРАММН...
Практическая польз...
Найти среднее ариф...
Для этого необходи...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?