Динамичните Web сайтове са гъвкави и мощни създания, по-точно описани като приложения, вместо само като сайтове.
Динамичните Web сайтове:
■ Отговарят на различни параметри (например, времето през деня или версията на браузъра на посетителя)
■ Имат „памет", което позволява регистрация и вход на потребителя, електронна търговия и други подобни процеси
■ Почти винаги интегрират HTML форми, което позволява на посетителите да изпълняват търсения, да осигуряват обратна връзка и т.н.
■ Често разполагат с интерфейси, където администраторите могат да управляват съдържанието
■ Са по-лесни за поддържане, надстройка и подобряване от статично създадените сайтове
Съществуват множество технологии за създаване на динамични Web сайтове. Най-често срещаните са ASP.NET (Active Server Pages, конструкция на Microsoft, JSP (JavaServer Pages), ColdFusion, Ruby on Rails (рамка за разработване в Web за езика за програмиране Ruby) и РНР. Динамичните сайтове не винаги разчитат на база данни, но все повече и повече от тях го правят, особено след като отличните приложения за бази данни като MySQL и MongoBD са достъпни евтино или направо без пари.
Какво се случи с РНР 6?
РНР 6 and MySQL 5 for Dynamic Web Sites: Visual QuickPro Guide, следващата основна версия на РНР - РНР 6 - беше завършена приблизително на 50 процента. Като пред, разчитах на бета-версията на РНР 6 за част от материала на това издание. И след това ... РНР 6 умря.
Едно от ключовите свойства, планирани за РНР 6 беше поддържането на Unicode, което означаваше, че РНР щеше да има възможност да работи естествено с произволен език. Това би било страхотно допълнение към вече популярния инструмент за програмиране. За нещастие, реализирането на поддържане на Unicode премина от сложно в твърде трудно, и разработ- чиците на езика забавиха разработването на РНР 6. Но не всичко беше изгубено; някои от другите свойства, планирани за РНР 6, като поддържане на именни пространства (обектно- ориентирана концепция за програмиране) бяха добавени към РНР 5.3.
Когато стана време за пускане на следващата основна версия на РНР, беше решено тя да бъде наречена РНР 7, за да се избегне объркването с версията РНР 6, която беше започната, но не и довършена.
Щое РНР?
РНР първоначално произлизаше от „Personal Home Page", когато беше създаден през 1994 от Расмус Лердорф за проследяване на посетителите в публикуваното му онлайн резюме. С нарастване на неговата полезност и възможности (и след като започна да се използва в по-професионални ситуации), той започна да означава „РНР& Hypertext Preprocessor". Според официалния Web сайт на РНР, който се намира на www.php.net (А), РНР е „популярен език за скриптове с общо предназначение, който е особено подходящ за разработване за уеб". Това е дълго, но описателно определение, чието значение ще обясня.
Как работи РНР
Както беше посочено по-рано, РНР е език от страна на сървъра. Това означава, че кодът, който пишете на РНР, е разположен в поместващия компютър, наречен сървър. Сървърът изпраща Web страници на заявилите ги посетители (вие, клиентът, и вашия браузър).
Когато един посетител отиде в сайт, написан на РНР, сървърът прочита РНР кода и след това го обработва в съответствие със скриптираните му указания.
В примера, показан на (D), кодът на РНР указва на сървъра да изпрати съответните данни - код на HTML - към браузъра, който третира получения код така, както би го направил със стандартна HTML страница.
Това се различава от статичния HTML сайт, където, когато бъде направена заявка, сървърът просто изпраща HTML данните към браузъра, и където не се получава интерпретация от страна на сървъра (Е). Тъй като не се изисква действие от страна на сървъра, можете да пускате HTML страници в браузъра си без изобщо да използвате сървър.
Крайният потребител и браузъра не могат да направят разлика между това как може да изглеждат home.html и home.php, но начините на създаване на съдържанието на тази страница ще се различават значително.
Що е MySQL?
MySQL (www.mysql.com) (F) е най-популярната в света база данни с отворен код. Всъщност, днес MySQL е стабилен конкурент за скъпите великани като Oracle и SQL Server на Microsoft (и, по ирония, MySQL е собственост на Oracle). Подобно на РНР, MySQL предлага изключителна производителност, преносимост и надеждност, с умерена крива за обучение и малка или никаква цена.
MySQL е система за управление на бази данни(СУБД)за релационни бази данни (следователно, MySQL е РСУБД). Една база данни, с най-прости думи, е набор от данни, били те текст, числа или двоични файлове, записани и поддържани организирани от СУБД.
Съществуват множество типове бази данни, от простите плоски файлове през релационните и обектно ориентираните до NoSQL. Една релационна база данни използва множество таблици за записване на информацията по нейните най- дребно разделени елементи. Въпреки че релационните бази данни могат да включват повече обмисляне при проектирането и етапите на програмиране, те предлагат подобрена надеждност и цялост на данните, която повече от компенсира изискваните допълнителни усилия. Освен това, релационните бази данни предлагат повече възможности за търсене и позволяват едновременно използващи ги потребители.
Чрез включване на база данни в Web приложение, някои от данните, генерирани от РНР, могат да бъдат извлечени от MySQL (G). Това допълнително премества съдържанието на сайта от статичната (твърдо програмирана) основа към гъвкава такава, като гъвкавостта е ключова за един динамичен Web сайт. MySQL е приложение с отворен код, подобно на РНР, което означава, че тя е безплатна за използване и даже за модификация (можете да изтеглите основния код). Съществуват случаи, когато трябва да плащате за лиценз за MySQL, особено ако печелите от продажбите или вграждането на продукта MySQL.
Софтуерът на MySQL се състои от няколко части, включително сървъра MySQL (mysqld, който изпълнява и управлява базите данни), клиентът MySQL (mysql, който ви дава интерфейс към сървъра) и различни помощни програми за поддържане и други цели. РНР винаги е имал добро поддържане на MySQL, и това е още по-вярно в най-новите версии на езика.
За MySQL е известно, че може да поддържа бази данни с размер до 60 000 таблици с повече от няколко милиарда реда. MySQL може да работи с таблици с размери хиляди терабайти в някои операционни системи, и обикновено спокойно с 4GB. MySQL се използва от NASA и от бюрото за преброяване на САЩ, както и от много други.
MySQL е с версия 5.7.18
Ще се нуждаете от следните инструменти:
■ Приложение за Web сървър (например, Apache, Nginx или IIS)
■ РНР
■ MySQL
■ Браузър (Internet Explorer или Edge на Microsoft, Firefox на Mozilla, Safari на Apple, Chrome на Google и т.н.)
■ Текстов редактор, приложение WYSIWYG с възможност за РНР (върши работа Adobe Dreamweaver) или IDE (интегрирана среда за разработване).
■ Приложение FTP, ако използвате отдалечен сървър.
Едно от най-хубавите неща за разработване на динамични Web сайтове с РНР и MySQL е в това, че всички изисквания могат да бъдат изпълнени съвсем безплатно, независимо от операционната ви система! Apache, РНР и MySQL са безплатни, браузърите се получават без пари, и много от добрите текстови редактори са напълно достъпни.
В приложението е разгледан процесът на инсталиране в операционни системи Windows и macOS. Ако имате компютър, вие сте на разстояние само две изтегляния от възможностите за създаване на динамични Web сайтове (в този случай, компютърът ви би представлявал и клиента, и сървъра в (D) и (Е)). Обратно, бихте могли да закупите хостинг за Web за няколко долара месечно, който ще ви осигури активирана за РНР и MySQL среда, вече разположена онлайн.