12 Изменения в работе с PHP-программами
В версии PHP 4.3.1 установлены новые правила формирования глобальных переменных – входных параметров PHP-программы и системных переменных: в целях обеспечения безопасности операционной системы отключен режим автоматического присвоения значений переменным. Для выбора значений необходимо выполнить обращения к соответствующим ассоциативным массивам.
Параметры PHP-программ
Передача параметров PHP-программам может выполняться различными способами:
при обращении в CGI-режиме из HTML form-объектов c методами передачи get и post;
при прямом обращении к PHP-программе в URL-строке.
Обработка входных параметров
Обработка входных параметров зависит от типа обращения.
1. Метод get
Пример HTML-страницы:
Пример соответствующей PHP-программы:
$counter=$_GET['counter'];
$id=$_GET['id'];
PRINT "Counter= $counter ID= $id";
?>
2. Метод post
Пример HTML-страницы:
Cоответствующая PHP-программа:
$counter=$_POST['counter'];
$id=$_POST['id'];
PRINT "Counter= $counter ID= $id";
?>
3. Задание параметров в URL-строке
Пример URL-строки:
http://www.jinr.ru/~petrov/php/testphp.php?counter=value1&id=value2
PHP-программа для обработки параметров этой строки будет такой же как и для передачи параметров по методу get.
Кроме того, можно прочитать всю строку с входными параметрами:
$query_string = getenv ("QUERY_STRING");
PRINT "
query_string: $query_string
";
Результат выполнения:
query_string: counter=value1&id=value2
Допускается использование устаревших типов ассоциативных массивов для вышеприведенного примера:
$counter=$HTTP_GET_VARS['counter'];
или
$counter=$HTTP_POST_VARS['counter'];
Системные переменные
Системные переменные в PHP-программе устанавливаются также обращением к ассоциативным массивам. Ниже приведен пример использования системных переменных QUERY_STRING, REMOTE_ADDR, HTTP_USER_AGENT:
$query_string = getenv ("QUERY_STRING");
$address = $_SERVER["REMOTE_ADDR"];
echo "
ADDRESS: $address";
$remote =getenv("REMOTE_ADDR");
echo "
Remote2: $remote";
$userag = getenv("HTTP_USER_AGENT");
echo "
user agent= $userag
";
echo $_SERVER["HTTP_USER_AGENT"];
Примечание:
Полезной для уточнения состояния PHP-пакета является функция phpinfo();
13 Сведения об информационном сервере linux4u
FTP/HTTP сервер linux4u.jinr.ru создан в ЛИТ ОИЯИ при поддержке РФФИ для облегчения доступа пользователей ОИЯИ к большому фонду бесплатного математического обеспечения ЭВМ, создаваемого в рамках проекта создания свободно распространяемого математического обеспечения Free Software Foundation (FSF) и других аналогичных проектов. Он позволяет прямо по локальной сети установить на рабочую станцию пользователя операционную систему Linux и другое математическое обеспечение, необходимое для научных расчетов. Это значительно быстрее и удобнее, чем обращение к базовым серверам фирм-разработчиков.
В настоящее время ОС Linux быстро развивается. Существует более десятка ее разновидностей (дистрибутивов). Их версии обновляются несколько раз в году, а еще более часто появляются изменения к предыдущим версиям. На сервере собраны и оперативно обновляются самые популярные из них: Redhat, Suse, Debian и другие. Установка и использование новых версий операционной системы повышает безопасность работы в сети, создает более удобную среду и позволяет использовать новые возможности аппаратуры. С помощью сервера linux4u.jinr.ru это легко доступно пользователям ОИЯИ. Кроме ОС Linux на сервере есть различные прикладные пакеты для пользователей, библиотека CERNLIB, математическое обеспечение PC-фермы, большая часть программного обеспечения GRID -технологии.
На WWW сервере http://linux4u.jinr.ru Вы найдете краткое описание программ, находящихся на FTP сервере, собрана документация для пользователей, и ссылки на другие WWW серверы с полезной информацией о Linux на русском языке.
Сделана поисковая система, позволяющая индексировать и затем искать информацию по ключевым словам на английском и русском языках на серверах linux4u.jinr.ru и www.jinr.ru.
Полезные ссылки на информацию об OC Linux:
http://linux4u.jinr.ru/docs/
http://linux4u.jinr.ru/docs/linux/faqadm/index.html
http://linux4u.jinr.ru/docs/master.doc/install-html/
http://linux4u.jinr.ru/docs/linux/goryach/index.html
14 Литература о Linux на русском языке
Операционная система Linux развивается так бурно, что в течение каждого года выходят новые версии дистрибутивов и издаются новые книги, в которых отражаются изменения и расширения этой ОС, а старые книги стареют и частично теряют актуальность. Поэтому приводимый ниже список не может быть полным и, вероятно, уже устарел к тому моменту, когда Вы его видите.
Петерсен Р. LINUX: руководство по операционной системе. Киев,BHV, 1998.
Рейчард К., Фолькердинг П. Linux – cправочник. С.-Пб., Питер Ком,1998.
Ивановский С. Операционная система Linux. М., Познавательная книга, 1999.
Сивер Э., Спейнауэр С. Linux справочник. С.-Пб., Символ Плюс, 2001.
Болл Б., Питтс Д. Red Hat Linux 7. Энциклопедия пользователя. М.-С.-Пб-К.,
ДиаСофт, 2001.
Бендел Д.,Нейпир Р. Использование linux. М.-СПб-К., Вильямс, 2002.
Митчел М., Оулдем Д., Самьюэл А. Программирование для Linux .
Профессиональный подход, М.-С.-Пб-К., Вильямс, 2002.
Болл Б., Питтс Д. и др. Red Hat Linux в офисе и дома. Москва, Санкт-Петербург,
Киев, 2002.
Хатч Б., Ли Д., Курц Д. Секреты хакеров. Безопасность Linux - готовые решения.
М.-С.-Пб-К., Вильямс, 2002.
В.Водолазский. Путь к Linux, СПб.:Питер, 2002.
Д.Н.Колисниченко. Самоучитель Linux. Установка, настройка, использование.
СПб.: НиТ.2004.
В.Костромин. Самоучитель Linux для пользователя. СПб. БХВ-Петербург,2003.
Ю.Вахалия. Unix изнутри. СПб.: Питер, 2003.
15 Сравнительное сопоставление прикладных пакетов в средах ОС Windows и Linux
назначение
программы
|
Windows
платформа
|
Linux
платформа
|
Файловый
менеджер
|
FAR
Norton Commander
Windows Commander
Explorer
|
Midnight Commander
Emacs *Xemacs *Kongueror
*Nautilus
|
Быстрый
просмотр
лок. страниц
|
IE
|
Midnight Commander *Kongueror
*Nautilus Lynx Links
|
Текстовый
редактор
|
Notepad NotRepad
Bred Shtirlitz
|
*Kate *Kedit *Kwrite *Gedit *Nedit *Xemacs mcedit emacs vim/vi/nvi pico
|
Просмотр
PDF
PostScript
|
Acrobat Reader
GhostView
|
*Acrobat Reader
*GV *Xpdf
|
Просмотр
графических
файлов
|
ACDsee
|
*xv *Kpaint *Kuickshow *Kview *xDvi *xSane
*ImageMagick
|
Графический
редактор
|
Adobe Photoshop
Gimp for Windows Paint
|
*Gimp
*ImageMagick
|
Векторная графика
|
Corel Draw
|
*xfig *Dia
|
Схемы баз
данных
|
Access
|
*Dia *KOffice
|
Офисный
пакет
|
MS Office OpenOffice
|
*Koffice *GnomeOffice
|
Электронные
таблицы
|
Excel
|
*Gnumeric *Kspread
|
Рисование
графиков
|
Excel
|
*Gnuplot *Grace *xfig *Dia
Kivio (*Koffice)
|
Программирова-ние и разработка
|
MS VisualStudio
Ms Visual C
Visual Fortran
|
*Kdevelop
|
Отладчик
|
Visual C
Visual Fortran
|
Gdb *DDD
|
HTML/DHTML
редактор
|
HomeSite
и т.д.
|
*Quanta Plus
|
XML редактор
|
XML Spy
|
*Emacs
|
HEX редактор
|
Hiew
|
*KHexEdit
|
Редактор иконок
|
ArtIcons
Icon Editors
|
*KIconEdit
|
Редактор
формул
|
OpenOffice Math
|
*Rformula ( *Koffice)
|
Трехмерное
моделирование
|
*IRIS Explorer *OpenDX *chimera
|
* отмечены имена программ, работающих под X window.
Назначение любой программы можно узнать:
man имя_программы
имя_программы --help
-
Благодарности
Авторы выражают благодарность всем сотрудникам ОИЯИ за интерес к работе, пожелания и замечания по содержанию данного руководства и особую признательность – проф. Ширикову В.П. за большую помощь в редактировании материала.
Данное руководство выполнено при поддержке гранта РФФИ 04-07-90162-в.
|