php introduction
DESCRIPTION
PHP IntroductionTRANSCRIPT
WEB-WEB-ПРОГРАМИРАНЕПРОГРАМИРАНЕСтефан Дражев, каб. 510, ИУ-ВарнаСтефан Дражев, каб. 510, ИУ-Варна
1
2
PHP PHP Програмиране за Програмиране за начинаещиначинаещи
Въведение вВъведение в PHP – “PHP – “езикът” на езикът” на Web-Web-програмистите в Мрежата програмистите в Мрежата
PHPPHP Програма от Програма от ““птичи поглед”птичи поглед” PHPPHP IDEs ( IDEs (Integrated Development EnvironmentsIntegrated Development Environments))
Web Web приложения=приложения=PHP +MySQLPHP +MySQL Примери на Примери на PHP PHP -приложения-приложения
Изграждане на Web-приложения Изграждане на Web-приложения CakePHPCakePHP
““Готови” Готови” SHELL-SHELL-Приложения:Приложения: JOOMLA JOOMLA
3
Въведение вВъведение в PHP – PHP – ““езикът” на езикът” на Web-Web-
програмистите в Мрежата програмистите в Мрежата
Do You PHP?By Rasmus Lerdorf
PHPHPP
Кратка история Кратка история на на
4
PHP езикът е създаден от Rasmus Lerdorf (роден на 22 Ноември 1968) през 1994
PHP (PHP: Hypertext Preprocessor)
1991: Lisa Friendly -- Green Team original, First Person employee, original member Java Products Group
dynamic web pages
http://www.lerdorf.com/
PHP PHP програма от “птичи програма от “птичи поглед”поглед”
PHP by PHP by example, , IBMIBM
5
Name Days
January 31February 28March 31April 30May 31June 30July 31August 31September 30October 31November 30December 31
Listing 1: Creating a table of day and month names
PHP PHP програма от “птичи програма от “птичи поглед”поглед”
PHP & HTML PHP & HTML
6
Listing 1: Creating a table of day and month names
Интегрирани среди за Интегрирани среди за разработка разработка PHP IDEPHP IDE
Adobe/Macromedia DW-Adobe/Macromedia DW-toolstools
PhpbuilderPhpbuilder - - виж SymfonySymfony - - виж Zend StudioZend Studio - - виж CakePHPCakePHP - - виж PDTPDT –PHP Developer –PHP Developer Tools
7
PHP & MySQLPHP & MySQL
Изграждане на динамични Изграждане на динамични сайтове чрез съхраняване на сайтове чрез съхраняване на съдържаниетосъдържанието//компонентите на компонентите на страниците в база от даннистраниците в база от данни
Динамично управление на Динамично управление на съдържането (съдържането (Content Content Management System, CMSManagement System, CMS))
8
PHP & MySQLPHP & MySQL ПримерПример
Изграждане на динамичен Изграждане на динамичен календар на събитията в даден календар на събитията в даден сайтсайт
http://www.softcomplex.com/products/php_event_calendar/
Data directory pathData directory path - path to the directory where - path to the directory where calendar config and events files are storedcalendar config and events files are stored
Image directory pathImage directory path - path to the directory where - path to the directory where images are storedimages are stored
Files directory pathFiles directory path - path to working files - path to working files
9
Идентифициране на Идентифициране на потребителяпотребителя
ТаблицаТаблица 'users', 'users', фиктивна база от фиктивна база от данни данни
CREATE TABLE `users` ( `id` int(11) NOT CREATE TABLE `users` ( `id` int(11) NOT NULL auto_increment, `username` NULL auto_increment, `username` varchar(255) NOT NULL, `password` varchar(255) NOT NULL, `password` varchar(32) NOT NULL, `first_name` varchar(32) NOT NULL, `first_name` varchar(255) NOT NULL, `last_name` varchar(255) NOT NULL, `last_name` varchar(255) NOT NULL, PRIMARY KEY varchar(255) NOT NULL, PRIMARY KEY (`id`) )(`id`) )
10
Идентифициране на Идентифициране на потребителяпотребителя
<form action="<?php echo $html->url('/users/login'); ?>" <form action="<?php echo $html->url('/users/login'); ?>" method="post">method="post"><div><div> <label for="username">Username:</label> <label for="username">Username:</label> <?php echo $html->input('User/username', array('size' => <?php echo $html->input('User/username', array('size' => 20)); ?>20)); ?></div></div><div><div> <label for="password">Password:</label> <label for="password">Password:</label> <?php echo $html->password('User/password', array('size' <?php echo $html->password('User/password', array('size' => 20)); ?>=> 20)); ?></div></div><div><div> <?php echo $html->submit('Login'); ?> <?php echo $html->submit('Login'); ?></div></div></form></form>
<form action="<?php echo $html->url('/users/login'); ?>" <form action="<?php echo $html->url('/users/login'); ?>" method="post">method="post"><div><div> <label for="username">Username:</label> <label for="username">Username:</label> <?php echo $html->input('User/username', array('size' => <?php echo $html->input('User/username', array('size' => 20)); ?>20)); ?></div></div><div><div> <label for="password">Password:</label> <label for="password">Password:</label> <?php echo $html->password('User/password', array('size' <?php echo $html->password('User/password', array('size' => 20)); ?>=> 20)); ?></div></div><div><div> <?php echo $html->submit('Login'); ?> <?php echo $html->submit('Login'); ?></div></div></form></form>
11
CakePHP - CakePHP - http://www.cakephp.org/
12
Интегрирани среди за Интегрирани среди за разработване на разработване на PHP-PHP-
приложенияприложения
Symfony - Symfony - http://www.symfony-project.org/
13
Интегрирани среди за Интегрирани среди за разработване на разработване на PHP-PHP-
приложенияприложения
Joomla/Mambo Joomla/Mambo средасреда Система за управление Система за управление
на учебно съдържание на учебно съдържание – – http://bultima.net/bambo
Интернет магазин – Интернет магазин – http://bultima.net/b2c/
14
Интегрирани среди за Интегрирани среди за разработване на разработване на PHP-PHP-
приложенияприложения
Php Php КнигиКниги
15
o Building Websites with Joomla! 1.5 o Pro PHP: Patterns, Frameworks, Testing and More o Oracle Database AJAX & PHP Web Application Development o Beginning PHP and MySQL E-Commerce (2nd Edition) o Wicked Cool PHP: Real-World Scripts That Solve Difficult Problems o Dynamic Web App Dev PHP/MySQL o PHP & MySQL Web Development All-in-One Desk Reference For
Dummies o PHP 6 Fast and Easy Web Development o php|architect's Guide to Programming with Zend Framework
16
УЧИ НА БАЗАТА УЧИ НА БАЗАТА НА ПРИМЕРИНА ПРИМЕРИ
WWW.GOOGLE.COM търси PHP Tools www.php.net www.php.net Официален сайт Официален сайт Ръководство по PHP (PHP ManualРъководство по PHP (PHP Manual) -) -
http://www.php.net/manual/bg/http://www.php.net/manual/bg/ http://en.wikipedia.org/wiki/PHPhttp://en.wikipedia.org/wiki/PHP PHP Function ListPHP Function List - - Here is a list of all the documented PHP Here is a list of all the documented PHP
functionsfunctions PEAR - PHP Extension and Application RepositoryPEAR - PHP Extension and Application Repository @ @
http://pear.php.net/http://pear.php.net/
17