PHP тілі. PHP-мен бірге жұмыс істейтін құралдар



Кіріспе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 1

1.тарау PHP тілі туралы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...2
1.1 PHP.мен танысайық ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..3
1.1.1 PHP. ның даму тарихы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .5
1.1.2 PHP.ның мүмкіндіктері мен қолданыс салалары ... ... ... ... ... ... ... ...5
1.1.3 РНР сипаттамасы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 6
1.1.4 РНР конфигурациясы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .7
1.1.5 PHP.дегі коментари ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...7
1.2 PHPжәне XML ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 9
1.2.1 РHPда хml.мен жұмыс істеу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 9
1.2.2 РНР.де XML дің стандартты функциялары ... ... ... ... ... ... ... ... ... .10
1.3 PHP / APACHE жүктеу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .14
1.4 SQL тілі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .15
1.4.1 SQL деген не? ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..15
1.4.2 SQL деректер қоры ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..16
1.4.3 PHP.де деректер қорының азаюы ... ... ... ... ... ... ... ... ... ... ... ... ... ..17
1.4.4 MySQL деректер қоры туралы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...18
1.4.5 MySQL мүмкіндіктері ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 19
1.4.6 MySQ деректер қорының РНР тілінде стандартты функциялары ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .19
1.5 PHP. мен бірге жұмыс істейтін сервердің классикалық құралы .
APACHE + PHP + MySQL ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 21

2. тарау AJAX технологиясы туралы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .24
2.1.1 АJAX деген не? ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..25
2.1.2 AJAX тің негізгі қағидасы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..30
2.1.3 AJAX ті пайдаланумен құрлған жүйелер ... ... ... ... ... ... ... ... ... ... ..34
2.1.4 AJAX технологиясының классикалық технологиялардан ерекшелігі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 35

3. тарау PHP және Ajax ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..37
3.1.1 AJAX технологиясын PHP да қолдану ... ... ... ... ... ... ... ... ... ... ... ..37
3.1.2 AJAX және SAJAX технологияларын PHP да қолдану ... ... ... ... ...45
Қортынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .48
Пайдаланған әдебиеттер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .49
Бұл бітіру жұмысының тақырыбы PHP тілінде AJAX технологиясын пайдаланып интерактивті WEB бетін құру. бітіру жұмысы жалпы 3 тараудан тұрады.
1-тарау PHP тілі туралы, бұл тарау 5 тараушадан тұрады. бұнда PHP тілінің даму тарихынан бастап, бұл тілдің мүмкіндіктері, қолдану салалары, мен маңыздылығы үйрену тәсілдері жазылған. Айталық. РНР тілі алғаш рет 1995 жылдың басында Personal Home Page (дербес үйдегі бетке арналған өнім) деген атпен шығып үйренуге ыңғайлы қолданылуы қарапайым бұл сияқты ерекшеліктері мен бүгінгі күнге дейін қолданыстан шықпай үздіксіз дамып толығып келе жатыр. Ол қолданушымен http протоколы арқылы байланысатын web-қосымшалар құруға арналған программалау тілі. PHP интерпретацияланатын тіл, яғни сервердегі сценарилер орындалу үшін PHP интерпретаторын орнату қажет. PHP- мен жазылған программа HTML файлына салынады,
2- AJAX технологиясы туралы. Бұл тарау 4 тараушадан тұрады. Бұл тарауды оқу арқылы сіз жаңа білімдерге қол жеткізе аласыз. Ұшқан құстай дамып бара жатқан жаңа заманда жаңа ойлар жаңа талаптар мен жаңа технологиялар ойлап табылуда бүгінгі қолда бар дүние ертең жоқ боп қолданыстан шығып жаңа заттар ман жаңа технологиялар орынын басып заман үздіксіз дамып алға ілгерлеп жатыр мұның бәрі де қазіргі дамып жатқан технологияның арқасы, міне сондай технологиядардың бірі AJAX. ол Технологиялық секіріс, қолда бар мүмкіндіктер аз қолда бар мүмкіндіктерін одан әрі кемелдендіру мүмкін емес кезде болады. Мұндай секіріес AJAX (Asynchronous javascript and XML) болып табылады. Ajax – тің жұмыс істеу тәсілі, пайдаланушы серверге өтініш жіберіп, сол арқылы сервер сандық мәлметтер қайтарылады. Ajax – тің негізі XMLHttrRequest, сервер мен пайдаланушы ара қатынасын реттейді.
3- PHP тілінде AJAX технологиясын пайдалану.
PHP тілінде AJAX технологиясын пайдаланудың маңызы,AJAX ол PHP ға жүктелген сервердің жұмысын жеңілдетеді. Мысалы, HTML – дың бір құжат оқуын көрсетсек, HTML – дың өзі мәлметтерді оқи алмайды. Осы арада Ajax техникасы пайдаланушыдағы HTML беттің пайдаланушыдағы PHP бетке өтініш етуі, содан кейін сервер PHP бет арқылы мәлметтерді оқып, қайтадан оқыған мәлметті пайдаланушыға береді.сол арқылы пайдаланушыдағы HTML беттіне мәлметтерді көрсетеді.

Мазмұны

Кіріспе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
... ... ... ... ... ... ... ... ... ... ... ... ..1

1-тарау PHP тілі туралы
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ...2
1.1 PHP-мен танысайық
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ..3
1.1.1 PHP- ның даму
тарихы ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ..
...5
1.1.2 PHP-ның мүмкіндіктері мен қолданыс
салалары ... ... ... ... ... ... ... ... 5
1.1.3 РНР
сипаттамасы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... . 6
1.1.4 РНР
конфигурациясы ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ..
... ... ... ...7
1.1.5 PHP-дегі
коментари ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ..
... ... ... 7
1.2 PHPжәне
XML ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ...9
1.2.1 РHPда хml-мен жұмыс
істеу ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ..9
1.2.2 РНР-де XML дің стандартты
функциялары ... ... ... ... ... ... ... ... ... .10
1.3 PHP APACHE
жүктеу ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ..
... ... ...14
1.4 SQL
тілі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... .15
1.4.1 SQL деген
не? ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... .15
1.4.2 SQL деректер
қоры ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ..16
1.4.3 PHP-де деректер қорының
азаюы ... ... ... ... ... ... ... ... ... ... ... ... ... ..17
1.4.4 MySQL деректер қоры
туралы ... ... ... ... ... ... ... ... ... ... ... . ... ... ... ..18
1.4.5 MySQL мүмкіндіктері
... ... ... ... ... ... ... ... ... ... ... ... ... ... .. ... ... ... ..19
1.4.6 MySQ деректер қорының РНР тілінде стандартты
функциялары ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... ... .19
1.5 PHP- мен бірге жұмыс істейтін сервердің классикалық құралы –
APACHE + PHP +
MySQL ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ..
... .21

2- тарау AJAX технологиясы
туралы ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ... 24
2.1.1 АJAX деген
не? ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... .25
2.1.2 AJAX тің негізгі
қағидасы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 30

2.1.3 AJAX ті пайдаланумен құрлған
жүйелер ... ... ... ... ... ... ... ... ... ... ..34
2.1.4 AJAX технологиясының классикалық технологиялардан
ерекшелігі ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... ... ... ...35

3- тарау PHP және
Ajax ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ..37
3.1.1 AJAX технологиясын PHP да
қолдану ... ... ... ... ... ... ... ... ... ... ... ..37
3.1.2 AJAX және SAJAX технологияларын PHP да
қолдану ... ... ... ... ...45
Қортынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .48
Пайдаланған
әдебиеттер ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ...49

Кіріспе

Бұл бітіру жұмысының тақырыбы PHP тілінде AJAX технологиясын пайдаланып
интерактивті WEB бетін құру. бітіру жұмысы жалпы 3 тараудан тұрады.
1-тарау PHP тілі туралы, бұл тарау 5 тараушадан тұрады. бұнда PHP тілінің
даму тарихынан бастап, бұл тілдің мүмкіндіктері, қолдану салалары, мен
маңыздылығы үйрену тәсілдері жазылған. Айталық. РНР тілі алғаш рет 1995
жылдың басында Personal Home Page (дербес үйдегі бетке арналған өнім) деген
атпен шығып үйренуге ыңғайлы қолданылуы қарапайым бұл сияқты ерекшеліктері
мен бүгінгі күнге дейін қолданыстан шықпай үздіксіз дамып толығып келе
жатыр. Ол қолданушымен http протоколы арқылы байланысатын web-қосымшалар
құруға арналған программалау тілі. PHP интерпретацияланатын тіл, яғни
сервердегі сценарилер орындалу үшін PHP интерпретаторын орнату қажет. PHP-
мен жазылған программа HTML файлына салынады,
2- AJAX технологиясы туралы. Бұл тарау 4 тараушадан тұрады. Бұл тарауды
оқу арқылы сіз жаңа білімдерге қол жеткізе аласыз. Ұшқан құстай дамып бара
жатқан жаңа заманда жаңа ойлар жаңа талаптар мен жаңа технологиялар ойлап
табылуда бүгінгі қолда бар дүние ертең жоқ боп қолданыстан шығып жаңа
заттар ман жаңа технологиялар орынын басып заман үздіксіз дамып алға
ілгерлеп жатыр мұның бәрі де қазіргі дамып жатқан технологияның арқасы,
міне сондай технологиядардың бірі AJAX. ол Технологиялық секіріс, қолда бар
мүмкіндіктер аз қолда бар мүмкіндіктерін одан әрі кемелдендіру мүмкін емес
кезде болады. Мұндай секіріес AJAX (Asynchronous java script and XML)
болып табылады. Ajax – тің жұмыс істеу тәсілі, пайдаланушы серверге өтініш
жіберіп, сол арқылы сервер сандық мәлметтер қайтарылады. Ajax – тің негізі
XMLHttrRequest, сервер мен пайдаланушы ара қатынасын реттейді.
3- PHP тілінде AJAX технологиясын пайдалану.
PHP тілінде AJAX технологиясын пайдаланудың маңызы,AJAX ол PHP ға
жүктелген сервердің жұмысын жеңілдетеді. Мысалы, HTML – дың бір құжат оқуын
көрсетсек, HTML – дың өзі мәлметтерді оқи алмайды. Осы арада Ajax техникасы
пайдаланушыдағы HTML беттің пайдаланушыдағы PHP бетке өтініш етуі, содан
кейін сервер PHP бет арқылы мәлметтерді оқып, қайтадан оқыған мәлметті
пайдаланушыға береді.сол арқылы пайдаланушыдағы HTML беттіне мәлметтерді
көрсетеді.

PHP тіліне кіріспе

1.1 PHP-мен танысайық . Соңғы бес жыл адамдар қарым-қатынасының жаңа
тәсілдері мен Интернеттің таңғаларлықтай дамуымен атағы шықты. Бұл
жағдайдың алдыңғы қатарында World Wide Web тұрады. Күнделікті бұл
коммуникациялық ортада мыңдаған жаңа сайттар ашылып, ал тұтынушыларға
қызмет көрсетудің жаңа түрлері ұсынылып жатыр. Нарықтың қарқынды дамуына
байланысты жаңа технологияға және осы технологияны меңгерген программа
өңдеушілеріне деген үлкен сұраныс пайда болды. Жаңа Заман талабына сай
көптеген программалау тілдері мен неше түрлі жаңа технологиялар ойлап
табылып адамдар қажетін қанағаттандырып келеді. PHP тілі жаңадан ойлап
табылған технологиялардың бірі. Біз енді PHP тілімен танысайық, және оның
мүмкіндіктері мен тарихы жайлы танысайық, сонымен қатар PHP сүйемелдеуімен
сайт жасау үшін керек негізгі мәліметті де қарастырайық.
РНР тілі тек практикалық есептерді шешуге арналған құрал ретінде
жасап шығарылған. Оны жасап шығарушы, Расмус Лердорф оның online-резъюмесін
қанша адам оқитынын білу үшін Perl тіліндегі қарапайым CGT-қабыршағын
жазды, бұл қатысу статистикасын жинақтау мақсатына арналған Perl-скриптер
жинағы болатын CGT (Common Gateway Interface – шлюздердің жалпы
интерфейсі) HTTP хаттамасы бойынша жұмыс істейтін серверлік қосымшаларды
жасауға арналған стандарт болып табылады. Сервер қолданушының сұранысын CGT-
бағдарламаға жібереді. Ол оларды өңдеп, жұмысының нәтижесін қолданушының
экранына қайтарады. Осылайша қатысушы әр түрлі факторлардың әсері
нәтижесінде өзгере алатын динамикалық ақпарат алады. Ал шлюздің өзі (CGT
скрипт) түрлі бағдарламалау тілдерінде – СиС++, Fortran, Perl, TCL, UNIX
Shell, Visual Basic, Python және т.б. жазыла алады.
PHP – қолданушымен http протоколы арқылы байланысатын web-қосымшалар
құруға арналған программалау тілі. PHP интерпретацияланатын тіл, яғни
сервердегі сценарилер орындалу үшін PHP интерпретаторын орнату қажет. PHP-
мен жазылған программа HTML файлына салынады, алайда қазіргі уақытта бұл
техника web-қосымша жазудың тиімді әдісі емес. PHP-ді программа
құрушыларға web- қосымшаларды тиімді және тез құруға мүмкіндік беретін
сервер жақта жұмыс істейтін web-сценарилердің орнатылған тілі ретінде
сипаттаған дұрыс. Web-парақтарды құрудың дәстүрлі, статикалық әдістемесіне
сәйкес келмейтін қосымшаларды құру барысында PHP JavaScript және басқа да
тілдермен қатар қолданылатын динамикалық мазмұнды құру және басқару үшін
бағалы құрал бола алады. PHP-дің көптеген стандартты функцияларының
арқасында түрлі тектес есептерді шығаруға болады. Оның құрамына графика
және онымен іс-әрекет, математикалық есептеулер, XML (Extensible Markup
Language), XSLT ( Open Database Connectivity) сияқты атақты технологиялар
кіреді. PHP HTML-дің препроцессоры болып табылады. Сервер файлды браузерге
бермес бұрын, оны препроцессор-интерпретатор қарастырады. Ол үшін файлдың
анықталған бір кеңейтілуі болу керек ( әдетте бұл .phtml немесе .php3) және
препроцессор үшін код болу керек. Парақ жіберілер алдында PHP код серверде
өнделеді және браузерге серверде сақталынғанға қарағанда қатты
ерекшеленетін HTML парақтар түрінде нәтиже беріледі. PHP клиент
скриптерінің тілдері болып табылатын JavaScriptJscriptVBScript-ке
қарағанда серверлік скриптер деп аталады. PHP Active Server Pages, Java
Server Pages, ColdFusion, embperl тілдеріне ұқсас болып келеді. Бұл
тілдердің барлығы web-серверде орындалатын кодты HTML парақтың ішіне
орналастыруға мүмкіндік береді.
Осы пакеттердің барлығының өзегі PHP болып табылады. Ол көптеген
операциялық жүйелерді қолданады. Солардың ішіне Windows пен Unix кіреді.
PHP контекстінде, функционалдылығында көрінетін олардың арасындағы
айырмашылық болмашы ғана. Үйде жасайтын жобалар үшін көбіне Windows
қолданылады. Ал үлкен, кәсіби жоба құруға Unix-ті пайдаланған жөн. Өйткені
ең алғашында PHP Unix платформасы үшін құрылған, сондықтан PHP-дің көптеген
кітапханалары мен толықтырулары Unix тәрізді жүйені талап етеді. Егер жоба
өте күрделі болмаса, Windows 2000, XP, 2003 операциялық жүйені пайдаланған
оптималды болып табылады. Windows операциялық жүйесінде жазылған PHP
скриптерді қажет болған жағдайда Unix-ке көшіріп алуға болады. PHP- мен
қоса web-сервер және мәліметтер базасының сервері қажет. Web-сервер –
қолданушы компьютерін web-серверге айналдыратын программа, aл мәліметтер
базасының сервері – PHP-мен басқарылатын мәліметтер базасымен жұмыс істеуге
мүмкіндік беретін сервер компоненті.
Дүниежүзіне кең таралған, қауіпсіз және ыңғайлы серверлердің бірі –
Apache. Ол Unix тәрізді жүйелер мен Windows операциялық жүйелері сияқты
әртүрлі платформаларда таралатын жоғары өнімді, жоғары функционалды web-
сервер болып табылады. Apache-дің ең негізгі бәсекелесі Microsoft
корпорациясы шығарған Windows ортасында жұмыс істейтін IIS (Internet
Information Server) болып табылады. Алайда IIS өзге есептер шығаруға
бағытталғандықтан, сонымен қатар PHP-дің IIS web-серверімен жұмыс жасағанда
функционалдылығының төменделуінен PHP пен IIS-тің бірлескен жұмысы аз
таралған. Ішінде PHP интерпретаторы салынған web-сервер мен MySQL
мәліметтер базасының сервері жинақталған арнайы пакеттер бар. Оның қатарына
тегін таралатын TopServer пакеті жатады.

1. PHP- ның даму тарихы
Кейінірек қабыршақтың аздаған өнімділігі бар екені анықталып, оны Си
тілінде қайта жазуға тура келді.РНР-ның бірінші версиясы бар сайт
орналасқан серверді қолданушылар құралға қызығушылық танытып, оны
қолданғысы келетіндер пайда болды. Осылайша РНР өзінше жобаға айналды және
1995 жылдың басында Personal Home Page (дербес үйдегі бетке арналған өнім)
деп аталған өнімнің бірінші белгілі версиясы шықты.
1995 жылдың ортасында тиянақты өңдеуден кейін РНРFI деп аталатын
(Personal Home Page Forms Interpreter – дербес үйдегі бет формалар
интерпретаторы) өнімнің екінші версиясы шықты. Онда қазіргі РНР-ның базалық
мүмкіндіктері болды, мысалы, html-формаларды автоматты түрде өңдеу және
html-кодтарға орналасу мүмкіндіктері. PHPFI синтаксисі Perl синтаксисін
еске түсіреді, бірақ өте қарапайым болды.
1997 жылы РНР-РНРFI 2.0-дің Си-таратылымының екінші версиясы шықты. Сол
уақытта РНР қолданушылары тұтас әлем бойынша бірнеше мыңды құрады, шамамен
50 мың домен, ол Internet домендерінің барлық санының шамамен 1%-тін
құрады. Ресми түрде РНРFI 2.0 1996 жылдың қараша айында ғана шықты, оған
дейін негізінен бета-версияда болды. Кейіннен шыққаннан кейін оны РНР 3.0-
дың альфа-версиясымен ауыстырды.
Энди Гутманс(Andi Gutmans) пен Зив Сураски(Zeev Suraski) 1997 жылы РНРFI-
дің кодын қайта жазып шығарды, себебі ол олар жұмыс жасап жүрген
электрондық коммерцияның қосымшасын өңдеуге тиімсіз болып табылды. Жобаны
тарату кезінде РНРFI-ді өңдеушілерден көмек алу үшін, Гутманс пен Сураски
олармен бірігіп РНР 3-ті РНРFI-дің ресми қолдаушысы екенін жариялауды
шешті. Біріккеннен кейін РНРFI-дің өңделуі толық тоқталды.
РНР 3.0-дің артықшылықтарының бірі ядроны кеңейту мүмкіндігі болды. 1998
жылдың соңына қарай РНР-ны пайдаланушылар ондаған мыңға артты. Web-
сайттардың жүздеген мыңы осы тілді қолдана отырып жұмыс жасайтындықтары
туралы хабарлады. Шамамен Internet серверлерінің 10%-де РНР 3.0
орнатылғанРНР 3.0 ресми түрде 1998 жылдың маусым айында жалпы тестілеуден 9
айдан кейін шықты. Ал қысқа қарай Энди Гутманс пен Зив Сураски РНР ядросын
қайта өңдеуді бастады. Олардың мақсаты күрделі қосымшалармен жұмыс
өнімділігін арттыру және РНР негізінде жатқан кодтың модульдігін жақсарту
болды. Қазіргі уақытта Zend Engine-ді жақсарту және алғашқы бета-версиялары
қазіргі уақытта жарыққа шығып қойған РНР 5.0-ға жаңа кіріспелеріне ендіру
жұмыстары жүргізіліп жатыр. Бүгінгі күнде РНР-ны жүз мыңдаған өңдеушілер
пайдаланады.Бірнеше миллиондаған сайттар РНР-да жазылған, ол Internet
домендерінің 20%-ін құрады.
1.1.2 PHP-ның мүмкіндіктері мен қолданыс салалары.
“РНР барлығын жасай алады” дейді оны жасаушылар. Алдымен РНР сервер
жанында жұмыс істейтін скрипттерді жасау үшін қолданылады. РНР кез-келген
CGT-скрипттер шеше алатын есептерді шеше алады, сонымен қатар html-
формалардың мәліметтерін өңдейді, html беттерді динамикалық түрде өндіреді
және т.б.
РНР-ның қолдану салаларын 3 негізгі салаға бөледі.
Бірінші сала, айтып кеткеніміздей, сервердің жанында орындалатын
қосымшаларды (скрипттерді) жасау. РНР негізінен дәл осы текті скрипттерді
жасау үшін кеңінен қолданылады.
Екінші сала – командалық жолда орындалатын скрипттерді жасау, яғни РНР-
нің көмегімен web-сервердан және браузерден тәуелсіз нақты машиналарда
орындалатын скриптерді жасауға болады.
Және соңғы үшінші саласы – клиент жағында орындалатын GUI-қосымшаларды
(графикалық интерфейстерді) жасау.
РНР-ны қолдану салалары кең өрісті және әр түрлі. Соған қарамастан ұқсас
есептерді шығара алатын басқа да программалау тілдері бар. Не үшін РНР-ны
меңгеру қажет? Ол бізге не береді? Біріншіден, РНР меңгеру өте қарапайым.
Синтаксистің негізгі ережелері мен оның жұмыс принциптерімен танысуды өзі
жеткілікті, сол арқылы (басқа тілде жазғанда үлкен дайындықты қажет ететін)
өз бағдарламамызды жазуға болады. Екіншіден, РНР шамамен барлық белгілі
платформалардан, операциялық жүйелерден және барлық түрлі серверлерден
қолдау тапты. Бұл да өте маңызды. Ешкімнің мысалы, Window-тегі жұмыстан
Linux-ке IIS серверден Apache серверіне ауысып, тағы бір бағдарламалау
тілін меңгергісі келмейді.
1.1.3 РНР сипаттамасы: РНР бес маңызды мінездемемен шартталған:
дәстүрлілік, қарапайымдылық, тиімділік, қауіпсіздік, бейімделгіштік.
Бұларданда жақсы қасиеті ақысыз таратылагындығында. Бес түрлі мінездемесыне
қысқаша тоқталатын болсақ дәстүрлігі РНРтілі әр түрлі салада жұмыс істеген
програмистерге таныс болып көрінеды тілдің көптеген конструкциялары Cи Perl
ден алынған, ал РНР ның коды көнделікты Си мен pascal программаларынан
практикалық түрде айрмашылықсыз болуы жиі кездеседы, бұл РНР зерттеуде
алғашқы күш салуды азайтады.
Қарапайымдылық
РНР сенариясы сіздің есебіңіздің ерекшелігіне байланысты 1000 немесе бір
жолдан тұруы мүмкін сізге арнайы библетеканы іске қосу, арнайы
програмистерін іске қосу, немесе осы сияқты бірнәрселер істеуі керек емес
РНР механизітмы алғашқы экрандалғаг тізбектен (?) кейін жай ғана жұре
бастайлды және экрандалған тізбек жұбыгн (?)кездестірмейынше жүре береді.

Тиімділік.
Тиімділік www жататын көп қолданушылары бар программалау ортасы үшін
ерекше маңызды фактор болып табылады.РНР.4.0-де қорларды бөлу механизімі
мен жақсарған объектілі бағытталған программалау қолдауы қамтамасыз
ету,сонымен қатар сеансты басқару құралдары жүзеге асырылған . Соңғы
версиясында артық жады бөлінуді тоқтататын сілтемелерді есепке алу
(reference counting) механизімі де пайда болады.
Қауыпсіздік
РНР разработчиктер (программа өңдеушілер) мен администраторға өкілеттігіне
иілгіш және тімді қауыпсіздік құралдарын да береді.Ал олар өз кезегінде
шартты түрде екі категорияға бөлінеді: жүйелік деңгей құралдары мен
қосымшалар деңгейі құралдары.
Қауыпсіздіктің жүйелік деңгей құралдары
РНР-де админстратор басқаруындағы қауыпсіздік механизімдері жүзеге асқан:
РНР дұрыс ыңғайлауында (реттелуінде) бұл іс әрекетінің максималды
тәуелсіздігі мен қауыпсіздігін қамтамасыз етеді. РНР қауыпсіздік реті (safe
mode) деп аталатын ретте де жұмыс істей алады. Бұл қолданушылардың РНР
қолдануында маңызды көрсеткіштерде шектейді. Мысалға,максималды уақыт
орындалуды және жадыны қолдануды (жады бақылаусыз шығындау сервердің тез
әрекетіне кері әсерін тигізеді). Сgi-bin сияқты адмнистратор қолданушы РНР
сценарйін орындайтын немесе қарайтын каталогтарға ,сонымен қатар РНР
сценарйін сервердегі қпя мәліметті көруге қолдануға шектеу қоя
алады(мысалға,password файылы).
1.1.4 РНР конфигурациясы (РНР нұсқасы,кескін-үйлесімі)
РНР үнсіз келісім бойынша таңдалған конфигурация кезінде жақсы жұмыс
істейтін болады. Бірақ сіз пакет (топтама) жұмысы сіздің мақсаттарыңызға
жақсы сәйкестігі үшін кейбір өзгерістер енгізе аласыз. Барлық конфигурация
параметрлері (көрсеткіштері) орнату процесі кезінде үнсіз келісім бойынша
(userlocallib) каталогына көшірілген РНР.ini файылында болады. РНР –мен
сәйкестікте қолданылатын платформа мен web-серверге тәуелсіз рнр.ini файлы
рнр-дағы жұмыстың маңызды аспектілерін басқаруға мүмкіндік беретін бірдей
стандартты көрсеткіштер топтамасы бар. Бұл файл рнр сценарийі орындалу
кезіндегі пакет мінез-құлқын анықтайтын барлық параметрлер
(көрсеткіштер)бар. РНРini файлы құрамы рнр іске қосылғаннан кейін оқылады.
РНР –ға пішімдеу,көркемдеудің бұрылуы шаблондарды құрудың мәні-сырт
келбеті мен парақ мінез-құлқын өзгерту кезінде дизайнер (көркемдеуші) артық
программаның код жазып әуре болмау үшін іске асады. Жақсы жағдайда
дизайнер программалау жөнінде біраз білімді немесе жоқ дегенде, айнымалы,
цикл, шартты командалар секілді ортақ консециялармен таныс болуы керек. Бұл
жөнінде мүлде білмеген дзайнерге шаблондар қолдану синтансис обиспидағы
керексіз мәліметтен басқа ештеңе бермейді. Бұдан екі жақта ұтады, дзайнер
қосымша біліп алып, жұмыс тобында бағалырақ мүше болса, ал програмистке
деяның жаңа көзі табылады. мүмкін дзайнер ерекше ештеңе ойлап таппасада,
оның орнына жағдайды программист көре алмайтын жаңа бір қырынан басқа
көзбен көре алады.
PHP- экраға мәтін шығарудың жеңіл нұсқасы. Оның жазылуы сc++, java, Perl-
тілімен ұқсайды. PHP – коды HTML- кодының ішіне кірістіріледі немесе бөлек
жазыла береді. Егер бөлек жазылғанда HTML сияқты блокнотта немесе wort – та
жазылып, “.php” кеңейтілуімен сақталады.
1.1.5 PHP-дегі коментари
PHP- программасында коментари сc++ тіліндегіге ұқсайды. Бір жолды
коментари , # белгілерімен, көп жолды коментари * ... * белгісімен
жазылада
PHP дегі қарапайы логикалық операциялар, циклдер While, do...while, for,
foreach

If ( ) { } else { }
Мысалы: ? Php
$a=5;
$b= 9;
if($a==$b) { echo $b-$a;}
else {$a*$b;}
?
PHP- айнымалылар, типтер
PHP- де айнымалылар алдын-ала жарияланбайды, алғаш берілген айнымалы
мәнімен осы айнымалы құрылады.
Айнымалыны белгілеу:
1. Айнымалы аты кез-келген ұзындықта.
2. $ белгісінен басталады: $a
3. Цифрдан басталмайды.
Айнымалылар типі
1. Boolean (true, false)
2. Integer
3. Float
4. String
5. Array
6. Object
7. Resours
8. NULL

1.1.8 PHP кодының структурасы
1. HTML коды
2. PHP белгілері
3. PHP коды
4. Коментари
5. Бос орын.
1. PHP белгілері
Қарапайым PHP программасы “? php ” – басынан басталып, “ ?”– ге
аяқталады.
Осы белгіның сыртында жазылғаны HTML кодына тән болады.
PHP кодын жазудың 4 түрлі әдісі бар:

1. XML - әдісі. ? Php echo (“ XML әдісі !”) ; ?
2. Қысқартылған әдіс.
? echo (“Қысқартылған жазу әдісі”); ?
Бұл өте қарапайым әдіс, file- да жазылған short_open_tag- ті таңдау керек.
Оны қозғалту әдісі: “C:\WINNT” папкасында php.ini- файлда short_open_tag=on
деп -өзгертеміз.
3. Script әдісі.
Script language = ‘php’ echo (“Script әдісі”) ;script
4. ASP - әдісі
% echo (“ASP жазу әдісі !”) ; %
Бұл файлда asp_tags орнатылса, оны істеуге болады. Яғни, php.ini-ді
қолданамыз, егер бұл тізімде жоқ болса, Apache-тен php.ini-ді қолданамыз.
Яғни, ; Аllow APS-style% % tags. asp-tags=On

1.2 PHPжәне XML

Біз осы әдістердің ішінде XML- әдісі туралы нақтырақ тоқталайық.
Олай болса біз алдымен XML жайлы, сонан кейін РНР мен XMLдің дамуы жайлы
тансайық. РНР мен XMLМәлімет алмасу тәсіліне айтарлықтай әсерін тигізетін
сөзсіз. Әрне,егер сіздің ұйымыңыз web күшін толық қолданғалы жатса,бұл
электрондық тордың үлкен көлемі нәтижесінде стандарттарды сақтау қарапайым
ыңғайлылықтан міндетті талапқа айналды.Осындай стандарттардың бірі xml
(extengile markup languge) болып табылады- ұйымдар мен қосымшалар арасында
мәлімет алмасудың ыңғайлы құрамы. Біз xml қолдауына стандартты
функцияларды қарастырамыз,сонымен қатар xml форматында файылдарды
өңдеудің ортақ процестер схемасын да қарастырамыз.Бұл материал сізге xml
қалай мұндай бағалы және рнр қалай xml базасында пайдалы және қызықты
қосымшаларды өңдеуге қолдануы мүмкін екенін жақсылап түсіне алуыңызға
көмектеседі.Бірақ xml сипаттамасына көшпестен бұрын,мен сіздерге xml
форматының тууына әкеліп соққан конциялардың дамуы туралы айтайын xml(...)-
xml базалық синтаксисін анықтайтын ерекшелік.
1.2.1 РHPда хml-мен жұмыс істеу үшін Джимрк пакеті Еxpat (xml parser
toolkit)- cm http:www.jclark.comxml Еxpat Apache1.3.7 және сонғы
версияларға да қрсылған, сондықтан сізге Apache-дің жаңа версиясын
қолдансаңыз оны енгізіп керек емес, XML мен PHP функционалды мүмкіндіктерін
пайдалану үшін php-ді wdth- xml кілтімен ыңғайлау керек.Бір қарағанда рнр
–де (немесе басқа кез келген тілді ) XML –дің мәліметтерін өңдеу есебі
қорқынышты көрінгенмен ,шын мәнінде жұмыс басты бөлігі сіз рнр құралдарымен
орындалады . Сізге тек өзіңізден ДТД-ға жаңа функцияларды ашқан , содан
соң оларды XML кодын өңдеу қиын емес процесінде қолдану ғана қалады. XML-
менжұмысқа арналған рнр функцяларын қарастыруға өтпестен бұрын ,XML
документінің негізгі компоненттерімен танысу керек.Бұл сізге неге бұл
функциялар XML кодын өңдеуге кез келген программа үшін алмастыруға
келмейтін бөлігі болатынын түсінуге мүмкіндік береді .
XML документ жалпы деңгейде 9 түрлі кмпонент бар:
өңдеуші тәгтер;
атрибуттер;
символдық мәліметтер;
жабылушы тәгтер;
өңдеуге арналған кеңес;
синтаксистік сипаттама;
маңызға сырт сілтемелері;
өңделмеген маңыз;
басқада компоненттер(комментарм,XML сипаттамасы және т.б).

XML құжаттарын тиімді өңдеу үшін аталған компаненттердің әрқайсысын
өңдейтін қолданушы функция-өңдеушілерді анықтау керек.

Анықталған функцялар XML -өңдеу процессіне стандартты рнр құралдары
арқылы қосылады. Жалпы XML кодын рнр-ге өңдеу процессі 5 этаптан тұрады:
1. Қолданушы функцияларын анықтау.
Әрне , егер сіз XML құжаттарымен күнделікті жұмыс істейтін болсаңыз,
онда бұл функцяларды бір рет қана жазсаңыз жеткілікті,кейін бұларға тек
өзгерістер енгізесіз.
2. Құжаттарды өңдеуге қолданылатын XML коды анализаторын(parser)
құрыңыз.Анализатор XML-parser-createl функциясын шақырумен құрылады.
3. Стандартты функциялар көмегімен өзіңіздің функцияңызды XML аналзаторына
регстрацяға тұрғызыңыз.
4. XML файлын ашып , ішіндегі мәліметтерді оқып, XML анализаторына
жіберіңіз.Мәліметтерді өңдеу XML-parser( )!қарапайым шақырушымен
орындалады.Бұл функция өзінің жұмыс процессінде сізбен анықталған барлық
өңдеушілерге жанама шақыруды қамтамасыз етеді.
5. Онымен іске қосылған қорларды тәуелсіз ету үшін XML анализаторын
жойыңыз.
1.2.2 РНР-де XML дің стандартты функциялары
PHP мен XML фарматта құжаттарды өңдеуге арналған әр түрлі компаненттерін
өңдейтін қолданушы функциялары регистрациясы үшін 8 стандартты функциялар
бар
Есеп xml-parser-free( ) функцясы арқылы шешіледі. Аталған бөлімдер мәні
келесі бөлімде түсіндіріледі. XML -өңдеушісіне қолданушы функцияларды қосу.
Сіз міндетті түрде барлық қолданушы функцяларын анықтау керек екеніңізді
ұмытпаңыз. Кері жағдайда қате шығады. Бұл бөлімде барлық стандартты
регстрация функциялары аталған және барлық қолданушы функциялары
скецификациясы(ерекшелігі) келтірілген.
xml_set_character_data_handler()
функция сисволдық мәліметтер үшін қолданушы функцияларын тізімге алады.
Синтаксис:
int xml_set_character data_handler(int анализатор, string
обработчик_символьных_данных) бірінші көрсеткіш XML аеализаторын анықтау,
ал екінші символдың мәліметтері өңдеуде қолданылатын функциялар аты.
өңдеуші функциясы анықтау мынадай болуы керек. function
обработчик_символьных_данных (int анализатор, string данные) { ... }
Бірінші көрсеткіш XML анализаторын анықтау, ол екінші өңдеу үшін символдық
мәліметтер.
xml_set_default_handler( )
XML құжатының тізімделмеген компаненттерінің бәрін қолданушы функциясына
тізімдейді жекелей осы кампаненттерге XML прологымен түсініктемесі жатады.
Синтаксис:int xml_set_default_handler(int анализатор, string
обработчик_по_умолчанию) Бірінші көрсеткіш XML анализаторын анықтау, ал
екінші үнсіз келісім бойынша қолданатын қолданушы функция аты. Ал өңдеуші
функциясы бірінші функциядағыдай function обработчик_по_умолчанию (int
анализатор, string данные) { ... }
xml_set_element_handler( )
функция ашушы жіне жабушы тэг элементтерін өңдеу, қолданушы елементтерін
тізімдейді. Синтаксис:
int xml_set_element_handler(int анализатор, string
обработчик_открывающих_тегов, string обработчик_закрывающих_тегов) Бірінші
көрсеткіш XML анализаторын анықтау, ал екінші және үшінші көрсеикішткр
ашушы және жабушы тегтерді сәйкесінше өңдеуге қолданатын функция аттарын
анықтайды. Жабушы тег элементтері келесі түрде анықталады:
function бработчик_ открывающих _ тегов (int анализатор, string
имя_тега,  string атрибуты[ ]) { ... }
Бірінші көрсеткіш XML анализаторын анықтау, ал екінші талдайтын элемент
үшін ашу тэгінің аты, ал үшіншісы сәйкес тэг атрибуттар массивнан
тұрады.жабушы тэг өңдеушісі келесі түрде анықталады
function бработчик_закрывающих_тегов (int анализатор, string имя_тега) {
... }
xml_set_external_entity_ref_handler ( )
Маңызға сыртқы сілтемелерді өңдеу үшін қолданушы функцияларын тізімдейді.
Синтаксис:
int xml_set_external_entity_ref_handler (int анализатор, string
обработчик_внешних_ссылок)
Бірінші көрсеткіш XML анализаторын анықтау, ал екінші сыртқы
сілтемелерді өңдеуде қолданатын қолданущы функцияларын анықтайды, өңдеуші
Функция анықтамасы мынадай:
function обработчик_внешних_ссылок (int анализатор, string ссылка, string
база. string системный_идентификатор, string открытый_идентификатор) { ...
}
Бірінші көрсеткіш XML анализаторын анықтау, екіншісі сілтеме атын,
төртінші маңызға сілтеме жүйесін идентификаторын, ал бесінші сілтеменің
ашық идентификаторын анықтайды. Үшіншісі көрсеткіш база, қазіргі уақытта
қолданбасада сипаттау міндетті.
xml_set_notation_decl_handler ( )
Функция синтаксистік сипаттамаларды өңдеу үшін қолданушы функцияларын
тізімдейді. Синтаксис: int xml_set_notation_decl_handler(int анализатор,
string обработчик_синтаксических_обьявлени й) Бірінші көрсеткіш XML
анализаторын анықтау, екіншісі Синтаксистік сипаттамаларды өңдеуде
қолданатын қолданушы функциялар атын анықтайды. өңдеуші функция анықтамасы
мынадай: Бірінші көрсеткіш XML анализаторын анықтау, екіншісі сипаттау аты,
төртінщісі жүйелік идентификаторын анықтайды.ал бесінші сілтеменің ашық
идентификаторын коттарын анықтайды. Үшіншісі көрсеткіш база, қазіргі
уақытта қолданбасада сипаттау міндетті.
function обработчик_синтаксических_обьявлени й (int анализатор, string
ссылка, string база, string системный_идентификатор, string
открытый_идентификатор) { ... }
xml_set_object( )
Функция XML анализаторын кейбір объектілермен біріктіреді, анықтайды.
Синтаксис: void xml_set_object(int анализатор, object &о6ъект) Бірінші
көрсеткіш XML анализаторын анықтау, екіншісі XML компаненттерін өңдеуде
қолданатын әдірістер бар объектіге сілтемеден тұрады. Осындай
xml_set_object( ) Функциясыан анализатор мен обектілі байланыстарды ереже
бойынша. Ал обекті конструктурында өңдеущі функцяларының анықтамасы алдында
щақырылады. class xmlDB { VAR $xmlparser: function xmlDB( ) { 
$this-xmlparser = xml_parser_create(); 
Связать анализатор с объектом 
xml_set_object($this-xmlparser. &$this); 
Определить функции-обработчики
xml_set_element_handler($this-xmlp arser, "startTag","endTag");
xml_set_character_data($this-xmlpa rser,"characterData"); }
... Определения функций-обработчиков startTag. endTag. characterData и
т.д. ...
} class xmlDB
Сынақ ретінде xml_set_object( ) Функциясын шақыруға болады объект
әдісіне сілтеу мүмкін еместігі айтылатын қате туралы хабарлама осы фрагмент
орындалғанда шығатынын көреміз.
xml_set_processing_instruction_hand ler( )
Функция Pi нұсқауларымен жұмыс үшін қолданушы функцияларын тізімдейді
Синтаксис: int xml_set_processing_instruction_hand ler(int анализатор,
string обработчик_инструкций)
Бірінші көрсеткіш XML анализаторын анықтау, екіншісі Pi нұсқауды өңдеуде
қолданылатын қолданушы функцияларын анықтайды өңдеущі функция анықтамасы
мынадай: function обработчик_инструкций (int анализатор, string приложение,
string инструкция) { ...}
Бірінші көрсеткіш XML анализаторын анықтау, екіншісі нұсқауды орындайтын
қосымша атын, үшіншісі қосымшаға жіберілетін нұсқауды анықтайды.
xml_set_unparsed_entity_decl_handle r( )
Функция маңдағы өңделмеген сыртқы сілтемелер үшін қолданущы функциясын
тізімдейді. Синтаксис: int xml_set_external_entity_ref_handler (int
анализатор, string обработчик_внешних_ссылок) Бірінші көрсеткіш XML
анализаторын анықтайды, ал Екіншісі өңделмеген сыртқы сілтемелерді өңдейтін
қолданушы функция отын анықтайды. өңдеуші функция анықтамасы мынадай:
Function сыртқы сілтемелерді өңдеуші(int анализатор, string маңыз, string
база, string жүйелік идентификатор. String ашық идентификатор, String
сипаттама аты) { ... }

1.3 PHP APACHE жүктеу

Әрі қарай жүрмес бұрын, біраз уақытыңызды php мен web серверді өз
компьютеріңізде жүктеуге орната бастауға бөліңіз PHP әртүрлі web сервер мен
үйлесімді болса да APACHE ді қолдану ең тиімді болар еді, өйткені,
біріншіден, ол бүгінгі күнде ең атақты веб сервер. Екіншіден, PHP мен жиі
жұмыс істейді және де әр түрлі веб серверлер үшін орнату процесінде көп
ортақ ерекшеліктер бар. httpwww.php.net адресі бойынша орналасқан PHP
жүктеуінде екі форматтың біреуін талдау керек. Бірінші, win32 орындалушы
форматы. Екінші негізгі мәтін. win32 орындалушы форматы Windows
9598NT2000 операциялық жүйенің қолданушыларына арналған, негізгі мәтінді
қайта компиляциялауға Windows платформа да болса да, көптеген қолданушылар
үшін міндетті емес дегенмен компляция (бұл кітапта осы процесс
қарастыпылмайды) болсын десеңіз,сізге Visual С++ компиляторының соңғы
нұсқасының біреуі керек. Компиляция туралы толық мәліметті .
http:www.php.netversion4win32bu ild.php адресі бойынша аласыз. Win32
орындалушы файлдарының орындатылуы осы бөлімде әрі қарай сипатталған.Басқа
жүйе қолданушылары программалық негізгі мәтінін өз бетінше қай
компиляциялауға тура келеді. Бұл көптеген жаңа келгендерге қорқынышты
болады да, шын мәнінде бұл өте қарапайым. Мүмкін сізді PHP RPM (Redhat
pachaде манадеч) форматта таратылса, сол қызықтыратын шығар? Иә, бұл
пакеттер PHP ресми сайытында көрсетілмесе де таратылады. әр түрлі
жеткізулер орыны туралы нұсқаулар мен қосымша ақпараты электрондық
конференциялар материалдарымен алуға болады. Компилияцияның жалпыланған
процесі алдыда қарастырайық.
Егер сіз арасһе серверін орнатсаңыз,соңғы нұсқаны сақтаған жоқ. Пакеттер
әр түрлі операциялық жүйе үшін ішкі каталогтары бар httpwww.apache.
org.dipt binarits каталогында орналасқан. Қажетілігіңізге сай нұсқасын
жүктеңіз. Қолда бар платформа мен web сервер үшін PHP баттауын толық
сипаттау бұл кітап шегінен шығады. Осы себепті мен негізгі көңілді Арасһе
серверне бөлемін. Қандай web сервер қолданатыныңызға тәуелсіз мен баптауға
артылған келесі бөлімдерді оқуға кеңес беремін. Сіз кездесетін ортақ
проблема жайлы кейбір түсініктер аламыз. Жаңа программа жаңа программа
орнату жаңа қолданушылар үшін жиы қиын сынаққа айналады. Алайда PHP
жасаушылар php арнаулы орнатылуы салыстырмалы қарапайым өту үшін қосымша
күш қолданды,келесі бөлімдерде Win32 және басқа платформаларды php да
орнатумен баптап орындау керек әрекеттер қарастырлған.
Деректер қорымен Web қосымша процесі интеграция көрсетілімі мен
мысалдарын зерттеу үшін сізге сізге My SQL программасын орнатып және онымен
танысуыңызға тура келеді. My SQL құжаттамасында орнату үшін толық нұсқау
берілседе сізге MySQL дереректер қоры сервері туралы жалпы ақпарат
келтірілген.
Орнату мен баптау.
Қазірге дейін PHP мен Apache программаларының компьютерде орнатылуы мен
жүктелуі сәтті болғаннан кейін, келесі қадам орнату тәсілін талдау.Windows
операциялық жүйесін қолданбайтын компьютерлерде MySQL серверін орнатудың үш
түрлі нұсқасы бар олар:
CGI екілік файлы. Apache статестикалық модулы және Apache динамикалық
модулі тәсілі сіз CGI екілік файлы ретінде PHP құрмайтыныңыз белгілі және
де, PHP ні серверлік түрде құруға кейбір артықшылықтары бар, сол себепті
мен php ні статестикалық және динамикалық түрде құруға көңіл бөлемін. Екі
нұсқа арасындағы негізгі айрмашылық мынада: PHPстатистикалық модулдегі кез
келген өзгерстерде қайтадан PHP ні де Apache ді де, компиляциялау керек. Ал
PHP динамикалық модулдегі өзгерістерде серверсіз PHP ні компиляциялау
керек. Windows жүйелі компьютерлерде PHP CGI екілік файлы түрінде немесе
Apache статистикалық модулі түрінде орнатыла алады. CGI екілік файлы мен
сипатталған. Себебі Windows қолданушылары Apache орынына басқа Web
серверлер қолданады CGI нұсқа осы серверлермен жеңіл интегралданады.
Сипатталған орнату процесі PHPApache ге қатысты болса да жоғарыда аталған
WEB серверлер үшін де солай орындалады. Алдында айтылғандай PHP4 AOLServer,
Netscape, EnterpriseServer Maicrasoft IIS, Zeus, және тағы басқалар.
Дегенмен мен Apache сервері үшін орнатуды сипаттаумен шектелемін PHP ны
басқа серверде орнату жайлы толық нұсқауларды http:www.php.net адресі
бойынша ала аласыз.
1.4 SQL тілі
PHP арқылы Ajax технологиясын пайдаланып интерактивті веб бетін құру
үшін, ең әуелі деректер қорында яғыни MySQL деректер қорында немесе SQL
деректер қорында біздің жасаған деректеріміз болуы керек. Олай болса біз
осы деректер қорын қалай құрамыз деген сұрақ туады, алай болса біз асы
деректер қорын құратын SQL деректер қор туралы тоқталайық.
1.4.1 SQL деген не? SQL әдетте релятциялық деректер қорымен өзара әрекет
үшін қолданылатын стандартты тіл ретінде сипатталынады, айталық SQL, C,
C++, немесе PHP сияқты программалау тілі емес. тәсілі бұл қолданушы
құзырына стандартты бұйрықтар топтапмасын беретін деректер қорымен әр түрлі
операцияларды орындайтын интерфейстік жабдық.SQL мүміндіктері қордан
мәліметтер талдау мен шектелінбейді. SQL де мәліметтер қоры мен өзара
қатынас үшін әр түрлі мүмкіндіктер бар, оның ішінде мәліметтер құрылымын
анықтау, мәліметтерді сақтағанда қолданылатын конструкциясын анықтау:
- Мәліметтер таңдамалы қордан мәліметтерді жүктеу және оларды шығару.
- Мәліметтерді өңдеу, ақпаратты өшіру, жаңарту.
- Кіру мүмкіндгін бақылау, жеке қолданушылар деңгейінде мәліметтерді
таңдауға, қоспа, жаңарту және жою мүмкіндігі, рұхсат беру.
- Мәліметтер бүтіндігін бақылау, параллелдік жаңарту немесе жүйенің
уақытша тоқтауы сияқты мәліметтер болғанда мәліметтер құрылымын
сақтауға көңіл аударыңыз.
1.4.2 SQL деректер қоры деректер қорымен жұмысқа арналған тіл делінген,
реляциялық мәліметтер қоры базалық жүйесі (МҚБЖ) мәліметтер өзара
байланысқан кестелі топтама түрінде ұйымдастырылған кестелер арасындағы
байланыс. Басқа кестедегі мәліметтерге сілтеме түрінде жүзеге асады.
Кестедегі әр элемент орыны анықталған жол мен бағанға сипатталатын екі
өлшемді массив деп көрсетуге болады. Реляциялық деректер қорына мысал :

Суретте көрсетілгендей әр кесте жолдардан және бағандардан тұрады, әр
бағанға ерекше ат беріледі, кестелер арасындағы стрелкамен көрсетілген
Customer мен Orders байланысына көңіл аударыңыз. Сұраныс туралы ақпаратта
қысқа клиент идентификаторы қосылған бұл клиенттің атының және басқада
рекурсивтердің көп сақталуынан қашуға болады. Деректер қоры бейнесінде тағы
бір байланыс бар, ол Orders пен Products кестелері арасында.бұл байланыс
берліген клиент сұраған өнім идентифкаторы сақталған Prod-ID өрісі бойынша
орнатылады. Бұл байланыстардың болуы клиент пен товардың жай идентификаторы
бойынша толық мәліметтерге сілтемеуге мүмкіндік береді.дұрыс ұйымдастырлған
деректер қорының ұйымы күшті жабдығы мен минималды шығынмен мәліметтерді
тиімді сақтауға айналады. Сонымен реляциялды деректер қорымен операциялар
қалай орындалады? Бұл үшін SQL де SELECT, INSERT,UPOATE, DELETE сияқты
жалпы бұйрықтар топтамасы бар. Мысалға егер сізге 2001cu (жоғарыдағы
суретке қараңыз) идентификаторлы кенттің электронды почта адресін алу керек
болса, онда SQL келесі бұйрығын орындау жеткілікті.
SELECT cust_email FROM customers WHERE custjd = '2001cu'
Бәрі толық логикалы, солай емеспе, жалпыланған түрде бұйрық мынадай
көрінеді:
Тік жақшалар бұйрықтың соңғы бөлігі міндетті емес еSELECT имя_поля FROM
имя_таблицы [ WHERE условие ]
екенін білдіреді. Мысалға, customers кестесінен барлық клиентің
электрондық почта адресін алу үшін келесі сұранысты орындау жеткілікті:
SELECT cust_email FROM customers
Сіз products кестесіне жаңа жазба қосқыңыз келді делік. Қосудың қарапайым
бұйрығы мынадай:
INSERT into products VALUES ('100pr','Red Tomatoes','1.43'):
Егер кешірек бұл мәлметтерді жою керек болса, келесі бұйықты қолданыңыз:
DELETE FROM products WHERE prod_id=1009r':
SQL бұйықтарының түрлері көп. Wep-та SQL-ге арналған көптеген оқу
ақпараттары мен қорлары бар. сізді Wep ортасында деректер қорымен жұмыс
ұйымдастырылуы қызықтыратыны анық? Ереже бойынша алдымен қарапайым бір
интерфейсттік тіл (PHP, JAVA немесе Perl) көмегімен деректер қорымен
байланыс орнатылады. Содан соң программа сандартты жабдықтар топтамасын
қолданып қорға сұраныс жібереді. Интерфейсттік тілді Wep пен деректер қорын
байланыстыратын жапсырма деп айтуға болады. Мен өзімнің сұйыкты
интерфейстік тілге PHP-ге өтемін.
1.4.3 PHP-де деректер қорының азаюы
PHP-де барлық деректер қоры серверлер кең азаюі бар, оның ішінде:
Adabas D Informix PostgreSQL
Dbase Ingres Solid
Direct MS-SQL InterBase Sybase
Empress mSQL UNIX dbm
File-Pro MySQL Velods
(read-only)
FrontBase ODBC
IBM DB2 Oracle (OCI7 и
OC18)

Бұл тізім көрсеткендей PHP да деректер қорының азаюы деректер қоры
сәйкестігінің қамтиды. Мораль егер сіз ақпаратты сақтау үшін Web арқылы
таралатын маңызды деректер қоры базалық жүйесін қолданатын болсаңыз, онда
бұл деректер қоры PHP сұйылуы мен жүреді. Деректер қоры PHP де сұйылу
қорымен байланыс, сұранысты өңдеуді байланыстырады.үзіу үшін стандартты
функциялармен көрсетілген.
Барлық деректер қоры сүйемелдеу қорын сипаттау бұл кітап шегінен шығары
анық. Дегенмен, My SQL сервері PHP дағы деректер қоры сүйемелдеуінің жалпы
мүмкіндіктері туралы жалпы түсінік береді. Осы себеппен осы бөлімнің және
кітаптың қойған бөліктерінде MySQL синтаксисы мысалдарда қолданылатын
болады.деректер қорының қандай сервермен жұмыс істегеніңізге байланыссыз
мысалдар үйлесімі көп қиындық туғызбайды.
1.4.4 MySQL
My SQL (http:www.mysql.com) — Т.с.Х DataKonsultAB (Стокгольм, Швеция)
фирмасы жасаған немесе қосқан SQL қорындағы (базасындағы) сенімді деректер
қоры базалық жүйесі 1995 жылдан бастап, өзінің жылдамдығы, сенімділігі мен
лицеиялы иілгіш саясаты шарыттарына орай деректер қоры базалық жүйесі
әлемінде My SQL кең таралғандардың бірі болады (төменнен қараңыз).
Жақсы мінездемесі мен қолдануға ыңғайды стандартты интерфейстті
функциялары арқасында My SQL PHP – дағы деректер қорымен жұмыс үшін атақты
жабдық болды.
My SQL баптауы. My SQL серверін орнатып болған соң баптау керек. Баптау
процесі негізінен My SQL кестелер жеңілділіктерін редактілеу мен жаңа
деректер қорын құрудан тұрады. Жеңілділіктер кестесі My SQL деректер қорына
кіру мүмкіндігін басқарады. Кестелерді дұрыс баптау сіздің деректер қоры
қауіпсіздігінде ерекше маңызды роль атқарады. Сол себепті сайтқа кірерде
жұмыс режимінде жеңілдіктер жүйесін толық үйрену керек.
Бір көргенде My SQL жеңілдіктер кестесі қорқынышты көрінеді. Алайда, егер
жақсылап оны өңдесек кейінгі ере жүру мәселе болмақ. жеңілдіктер кестесін
толық сипаттау осы кітап шегінен шығып кетеді. Дегенмен, Web – те жаңа
бастаған My SQL қолданушыларыға көмекші қорлар көп. Қосымша ақпаратты My
SQL сайтынан (http:www.mysql.com) ала аламыз.
Дұрыс орнатып және My SQL пакеттерін баптағаннан кейін Web ортасында
деректер қорымен сынақ жүргізе бастауға болады. Тура осы тақырыпқа келесі
бөлім орындалады. Рнр дағы My SQL сүйемелдеуін бастайық.

1.4.5 MySQL мүмкіндіктері

MySQL ANSI 92 стандартындағы SQL сұранстар тілін сүйемелдейді және де осы
стандартқа басқа бірде бір деректер қоры базалық дүйсінде жоқ кеңейтулер
жиыны бар.
MySQL мүмкіндіктерінік қысқаша тізімдері:
- Деректер қорымен бір уақытта жұмыс істейтін шексіз қолданушылар санын
сүйемелдейді.
- Кестедегі жол саны 50 мыңға дейін жете алады.
- Бұйрықтардың тез орындалуын мүмкін, MySQL қазіргі серверлер ішінде ең
тезі.
- Қарапайым және тиімді қауіпсіздік жүйе.
- MySQL шыныменде тез сервер болып саналады. Бірақ осыған жету үшін
жасаушылар -реляциалды деректер қоры базалық жүйесінде кейбір талаптардан
бас тартты.
MySQL де мыналар жоқ.
- Select * From Table1 WHERE ID IN(SELECT id FROM Table2) сияқты салымды
сұраныстар сүйемелдеуі.
- Транзизация сүйемелдеуі жүзеге аспаған оның орынына LOCK UNLOCK TABLE
- Сыртқы (fereign) кілттер сүйкмелдеуі жоқ.
- Тригерлермен сақталатын працедуралар сүйемелдеуі жоқ.
- Көрсатілімдер (VIEW) сүйемелдеуі жоқ.
Құрушылар сөзі бойынша осы (2-4) пункттар жоғары тездікті жүзеге асыруға
мұмкіндік береді, олардың жүзеге асырлуын айтарлықтай сервер жылдамдығын
төмендетеді. Бұл мүмкіндіктер жоғары тездікпен төмен бағасымен
сәйкестігінде серверге үлкен атақ әкелгеннен кейін WEB қосымшаны жасау
кезінде қиындық болмайды.
1.4.6 My SQL – мен жұмыс үшін рнр стандартты функциялары
Сонмен, бақылаулардан кейін бәрі Му SQL серверімен жұмыс үшін бәрі дайын.
Осы бөлімді мен Му SQL серверінің рнр сценариі өзара әрекетін оңай
ұйымдастыруға көмектесетін рнр стандартты функцияларын көрсетемін. Му SQL
серверімен әрекеттесетін жалпы әрекеттер мынадай:
Му SQL серверімен байланыс орнату. Егер әрекет сәтсіз болса, сәйкес
хабарлама беріп, процесті аяқтау. Сұранысты өңдеу үшін бірнеше деректер
қорын ашуға болады. Таңдалған базаға сұранысты өңдеу. Сұранысты өңдеу
аяқталған соң деректер қоры серверімен байланысты жабу.
PHP дағы My SQL мен қарым қатынас үшін келесі функциялар керек болады:
int mysql_connect(string hostname, string username, string password);
mysql мен байланыс құру көрсеткіштері:
Hostname – деректер қорында орналасқан, хост аты.
Username –қолданушы аты.
Password –қолданушы құпия номері.
Егер байланыс сәтті болса 0 ге кері жағыдайда 1 ге тең болатын int типті
көрсеткішін функция қайтарады.
int mysql_select_db(string database_name, int link_identifier);
жұмыс үшін деректер қорын таңдау көрсеткіштері:
Database_name мәліметтер қоры аты.
link_identifier –, mysql_connect. Функциясынан алынған ID байланыс
(міндетті емес параметр, егер ол көрсетілмесе, онда mysql_connect) соңғы
шақыруындағы ID қолданлады. Функция true или false мәнін қайтарады.
int mysql_query(string query, int link_identifier);
функция деректер қорына сұранысты орындайды.
Көрсаткіштер:
query – сұраныстан тұратын жол.
link_identifier – см. Алдынғы функцияны қараңыз.
Функция ID нәтижесін немесе, егер қате болса, 0 ді қайтарады.
int mysql_result(int result, int i, column);
Функция column бағанды және i жолындағы мәнді қайтарады.
int mysql_close(int link_identifier);
Функция mysql мен байлансты жабады.
Көрсаткіштер:
link_identifier – см. Жоғарыға қараңыз.
Функция true немесе false мәнін қайтарады.
Мысал:
html
body
?php
$db = mysql_connect("localhost", "root");
mysql_select_db("mydb",$db);
$result = mysql_query("SELECT * FROM employees",$db);
printf("First Name: %s
\n", mysql_result($result,0,"first"));
printf("Last Name: %s
\n", mysql_result($result,0,"last"));
printf("Address: %s
\n", mysql_result($result,0,"address"));
printf("Position: %s
\n", mysql_result($result,0,"position")) ;
mysql_close($db);
?
body
html
1MySQL де деректер қорынан деректерді шығару.
Кестеден мәліметтерді шығару үшін кестені кестені – массив құрамыз. Оны
mysql_fetch_row аудармасы қатарды талдау, ол массивті қарастырып бізге
керекті қатарды таңдайды. mysql_fetch_array(). Функциясы қатарды саны
бойынша емес, аты бойынша таңдайды. Және код ішінде dowhile, if-else
операторларын құруға болады.

1.5 PHP- мен бірге жұмыс істейтін сервердің классикалық құралы – Apache +
PHP + MySQL.

Негізінен ең танымал web-сервер 1.3.2 және 1.3.27 нұсқалы Apache болып
келеді. Apache-дың өркендеуімен Apache Server Foundation тобы шұғылданады ,
ал сервердің өзі еркін программалық қамтама құрушылардың ең ірі жетістігі
болып саналады. Apache-мен бірге РНР, Perl және тағы да басқа программалау
тілдері қолданылады. Бұл әртүрлі жоспар мен деңгейлі web-жобаларда
қолданылатын еркін өнімдер. Осы секілді мәселелерді шешу үшін MySQL пакеті
қолданылады. Онымен қосымша құрған оңай, тез және функционалдылығы
жеткілікті. Apache мен MySQL пакеттері программалау тілдерінің қажетті
түсініктемелері сияқты Linux операциялық жүйенің көптеген дистрибутивтеріне
кіреді. Мұнде олар өздеріне үйреншікті жерде дұрысырақ жұмыс істейді.
Арнайы бір хостингте скрипттерді орналастыруды сол ортада және таңдалған
хостерге сәйкес келетін программалық қамтаманың көмегімен жүргізу қажет.
Бұл скриптердің нағыз серверде дұрыс жұмыс істемей қалу қаупін төмендетеді.
Жоғарыда аталып өткен Unix, Linux, BSD, MacOS сияқты пакеттер Windows
операциялық жүйесіне де сәйкес келеді. Сонымен қатар қолымен орнатуды қажет
етпейтін кешендер бар. Олардың ішіне Apache, MySQL және басқа да атақты
программалау тілдерін орындаудың windows − нұсқалары кіреді. Бұл
компоненттер алдын- ала үйлестірілген, сондықтан мұндай программалық
қамтамамен бұрын-сонды жұмыс істемеген адамдар үшін өте ыңғайлы, өйткені
көптеген қателіктер осы сатыда жасалынады. Ұсынылып отырған тексттік Apache-
ді ашу варианты алтындай уақытыңызды өзіңіздің web-серверіңізді және басқа
да компоненттерді орнатуға кетірмейді. Мұндай пакеттерді қолыңызбен
өзіңіздің web-парақтарыңыз үшін жазған скриптерді тексеру үшін ғана емес,
сонымен қатар толық-қанды сервер ретінде пайдалануға болады.
Мұндай кешендердің келесідей құрылу әдістері ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
DreamWeaver, MySQL бағдарламаларының көмегімен Евросеть деректер қорының бағдарламасын құру
Қазіргі Web сайттар туралы
Сайт жасау экономикасы
Автоматтандырылған ақпараттық жүйелер құру технологиялары
Мәліметтер базасын құру жолдары
Медициналық мекеменің автоматтандырылған ақпараттық жүйесін құру
Интернет дүкен туралы
Желілік интернет дүкен
Спорт дүкенінің тауар айналымының автоматтандырылған жүйесін құру
PHP тілі
Пәндер