Какво е РНР?
Това е сървърен език за уеб програмиране. Т.е. кодът му се изпълнява на сървъра(машината, на която е исталиран
РНР и в която се разполагат файловете му), генерира се резултат и той се изпраща на клиента(браузера). Форматът във
който се изпраща към него е HTML. За да се справите с тези уроци трябва да имате начално ниво на познания по
HTML. Ето няколко полезни линка:
Препратки:
http://www.htmldog.com/guides/htmlbeginner
http://www.tizag.com/htmlT
http://www.w3schools.com/html/default.asp
Как се указва кода РНР?
Езикът РНР е сриптов език, както вече споменах. Тоест той се пише във файлове, съдържащи HTML код, като се
обозначава със специален отварящ и затварящ се таг:
<?
?>
или
<?php
?>
С този език вие генерирате съдържание или извършвате действия, с цел да обогатите съдържанието на една уеб
страница. По принцип, HTML е скрипт, който форматира дадена инфорация и я извежда във браузера. Той не е
динамичен и не може да изведе данни като час, дата или данни от друг формат(Word, PDF документи или бази данни).
Всяка промяна трябва да се прави ръчно. Ето защо, РНР е толкова често използван - той може да обработва
инфорамация от други източници и да я извежда с помоща на HTML, което прави един уебсайт динамичен(т.е. с
променящо се съдържание).
Какво е MySQL?
Това е база данни, много разпространена в интернет програмирането. Тя структурира информация в таблици, правейки
я лесна за търсене, вмъкване и организиране. РНР може да работи много добре с MySQL, като освен това и двете
съставки са безплатни, което ги прави най-предпочитаните. За тези роци ще ползвам това съчетание. MySQL има
собствен синтаксис, на който също ще обърна внимание. Той не е сложен и няма да ви затрудни.
Как се инсталират?
Инсталацията на РНР и MySQL не е елементарна, но за щастие има вече написани много статии по въпроса. Аз ще
ви препоръчам нещо, което ще ви свърши работа за началното ви ниво:
Препратки:
Инсталация на Apache, PHP,
MySQL
Да влезем в час с променливите
Променливата е място в паметта, което може да заделяте, да четете и пишете в него. От самото име следва, че то се
използва за работа с променливо съдържание. В РНР всички променливи са динамични, т.е. вие не се интересувате от
това как се заделя масто за променливата, как се освобождава и т.н. Просто я използвате. Дори не е нужно да я
дефинирате предварително. променливата се обозначава така
$prams
Eлементарните операции
Както всеки език, РНР има логически и математически функции и операции, които са стандартни. Първото и най-важно
нещо е присвояването. Когато искате да дадете стойност на дадена променлива вие използвате знака "=". Пример:
$prams = 5;
Този код ще даде на променливата $prams стойност 5. По същия начин може да й дадете стойност символен низ. Т.е.
$prams = "Вълкът изяде бабата!";
Аритметичните операции са ясни:
$prams = 5 + 5; /* резултатът е 10 */
$prams = 5 * 5; /* резултатът е 25 */
$prams = 5 / 5; /* резултатът е 1 */
$prams = 5 - 5; /* резултатът е 0 */
Коментарите
Те се обозначават или "/*" и още веднъж същото за край на коментара, или "//", което означава коментар до края на
реда. Коментирането е важно нещо във всеки вид програмиране. То дава обяснения и пояснения върху кода, за да
бъде той максимално ясен за всеки, който го чете. Разбира се, коментарите, ползвани по-горе, не са рентабилни, тъй
като за всеки, занимаващ се с програмиране, тези операции са ясни, но когато имате по-дълъг и сложен код е добре да
го коментирате на важните места. Това помага не само на човека, който чете кода, но и на вас, да се ориентирате.
Първата ви програма
Нека направим класическата програма, която извежда на екрана "Hello". Създайте файл first.php и в него напишете:
<?
echo "Hello";
?>
Запишете този файл, там където се намира сървърът, с който работите(и на който е инсталиран РНР) и отворете
браузера си. Напишете в адресния бар(там където пишете адресите на сайтовете) пътя до файла, който туко що
създадохте.
Функцията echo извежда към браузера инфорамция. Тази информация се интерпретира като HTML. Т.е. ако промените
реда с функцията на:
echo "<b>Hello</b>";
думата "Hello" ще се появи удебелена. Всеки ред, съдържащ операция или команда, трябва да завърши със ; Ако
това не е така, компилаторът(програмата, която изпълнява РНР кода) няма да може да разбере къде свършва и къде
започва всяко действие. В времето ще се създадете навик да добравяте ; в края на всеки ред.
Няколко важни функции
phpinfo() - директно извежда към браузера информация за сървъра и настройките на средата, както и за инсталираната
версия РНР.
print_r($varible) - извежда съдържанието на променливата. Това е много полезна функция за проверка на това коя
променлива какво съдържа. Разликата от echo е че тази функция разпознава какъв вид има променливата и я извежда
спрямо това. (ако е асоциятивен масив извежда ключ=>съдържание)
include() - включва съдържанието на друг файл в кода на текущия и на мястото, където е извикана
define($cost, "value") - дефинира константа, която приема стойността "value". (пример: define($PI, 3.14); - дефинира
числото ПИ)
GET и POST методи
Това са средствата, с които РНР си комуникира с клиента. Да кажем имаме следния код:
<FORM METHOD="POST">
Please type your name here:<BR>
<INPUT TYPE=TEXT NAME="username"><BR><BR>
<INPUT TYPE=SUBMIT VALUE="Submit data">
</FORM>
Този код ще покаже на екрана едно поле за въвеждане и бутон за потвърждение. Тъй като за формата е избран метода
POST, т.е. скрито подаване на променливи, можем да вземем стойността на полето username с $_POST['username'].
Нека сега сменим метода на GET. Това означава, че променливата ще бъде предадена явно - това ще забележите
след натискане на бутона Submit data - в полето на URL адреса ще има нещо от сорта: test.php?username=Ivan.
Стойността на променливата се намира във $_GET['username']. В по-старите версии на РНР до стойностите на
променливите се достига чрез $HTTP_GET_VARS и $HTTP_POST_VARS, съответно за GET и POST методите.