Көбінесе бұл деректерді өңдеу үшін клиенттік браузерден сценарийі бар серверлік файлға деректерді жіберу қажет болады. Php параметрлерін сценарийге беруді қалай ұйымдастыруға болатынын қарастырайық.
Бұл қажетті
PHP және HTML тілдерін білу
Нұсқаулық
1-қадам
HTTP (HyperText Transfer Protocol) веб-формаларынан деректерді тасымалдау үшін екі әдіс берілген - GET және POST. Олар клиенттік қосымшадан (браузерден) серверлік қосымшаға (орындалатын php-сценарий) берілу жолымен ерекшеленеді. Бұл үшін GET әдісі мекен-жай жолағын қолданады. Яғни, оған берілген айнымалылардың атаулары мен мәндері сұрақ белгісі (?) Арқылы тікелей сценарий мекен-жайына (немесе URL - Uniform Resource Locator) қосылады. Мысалы, URL келесідей болуы мүмкін:
Мұнда search.php сценарийіне 30 мәні бар num деп аталатын айнымалы, 1 мәні бар жаңа терезе айнымалысы және өшірулі мәнімен айнымалы беріледі. Мұндай сұранысты алған сервер «?» файл адресін бөліп, қалғандарын айнымалы атаулары мен мәндерінің жұптарына бөледі. Алынған жұптар $ _GET массивімен толтырылады, одан мекен-жайда көрсетілген php сценарийі оларды шығарып ала алады. Қарапайым түрінде, бұл деректерді браузерден серверге GET әдісі арқылы жіберуге арналған html коды келесідей болуы мүмкін:
Осы деректерді алуға арналған қарапайым PHP сценарийі келесідей:
<? php
$ num = $ _GET ['num'];
$ newwindow = $ _GET ['newwindow'];
$ safe = $ _GET ['қауіпсіз'];
?>
GET әдісі арқылы айнымалыларды жіберудің маңызды кемшіліктері:
- деректердің шектеулі саны, өйткені URL ұзындығы 255 символдан аспауы керек;
- html-кодтың барлық таңбаларын осы әдіс арқылы беруге болмайды;
- берілетін мәліметтер пайдаланушыға көрінеді, бұл қауіпсіздік тұрғысынан әрқашан қолайлы бола бермейді;
2-қадам
Бұл қолайсыздықтар мен шектеулерді басқа әдісті - POST қолданып болдырмауға болады. Ол деректерді беру үшін желілік пакеттердің арнайы аймақтарын - тақырыптарды қолданады. Барлық басқа аспектілерде бұл әдістер арасындағы айырмашылықтар аз болады - деректерді жіберудің жоғарыда көрсетілген түрінде тек әдіс атауы өзгереді:
Php сценарийінде тек мәліметтер массивінің аты ғана:
<? php
$ num = $ _POST ['num'];
$ newwindow = $ _POST ['newwindow'];
$ safe = $ _POST ['қауіпсіз'];
?>