Навигация
Главная
Поиск
Форум
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
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Модуль Forms 62798
Создание отчето... 62779
ТЕХНОЛОГИИ ДОСТ... 59322
Пример работы с... 58045
Имитационное мо... 54708
Реклама
Сейчас на сайте
Гостей: 7
На сайте нет зарегистрированных пользователей

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

Метод конечных разностей для интерполяции/экстраполяции на Delphi
Медиа плейер на Delphi + Пояснительная записка
Моделирование автовокзала + Отчет + Блок схема

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Введение в 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 15:42:53 · 1 Комментариев · 5832 Прочтений · Для печати

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


Комментарии
foreach July 02 2011 16: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...
Шаблон для новост...

Случайные загрузки
Самоучитель PHP 4
PBEditPack
Создание лабиринт...
Платформа програм...
Animation (Пример...
Последнее загруж...
PDJPack
Pro-Download Sys...
XPButtons
Java Server Pages...
Факториал [Исходн...
DemoEdit [Исходни...
IPAddresseEdit
PDJ Scrollers
Delphi 2005. Разр...
CoolControls v3.0...
AdBlaster v2.5 - ...
Degisy Data Acces...
TrayIcon
Tetris 2002

Топ загрузок
Приложение Клие... 100421
Delphi 7 Enterp... 84916
Converter AMR<-... 20061
GPSS World Stud... 11952
Borland C++Buil... 11404
Borland Delphi ... 8368
Turbo Pascal fo... 7007
Visual Studio 2... 4984
Калькулятор [Ис... 4622
FreeSMS v1.3.1 3529
Случайные статьи
Подробно о принцип...
Алгоритмы поиска и...
WDTABLE (РАЗНОСТНА...
Системные вызовы и...
Задание на моделир...
Офлайн-версия сайт...
9.2. Первая помощь...
Оглавление. Java. ...
Политика хранения ...
Блок ASSIGN
Форматирование вво...
Выноски
Создание триггера
Основные понятия и...
Успех в стратегии ...
Как быть программи...
Circular unit refe...
Внешние проверки
Кодирование
InfoSeek Express 2.2
Наш метод queueSound
Категории итераторов
Применение аппарат...
Указания.
Что такое SEO, SEA...
Статистика



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


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