⊗ppPmFmOFH 299 of 447 menu

PHP-ի մեկ ֆայլում ֆորմայի մշակում

Նախորդ դասում մեր ֆորման տեղադրված էր մեկ էջում, իսկ ուղարկվում էր մյուսին։ Իրականում դա պարտադիր չէ։ Եթե դատարկ թողնել action ատրիբուտը կամ ամբողջությամբ հեռացնել այն, ապա ֆորման կուղարկվի նույն այս էջը։

Ինչպես է դա աշխատելու. էջ առաջին մուտք գործելիս մենք կլրացնենք ֆորման տվյալներով և կսեղմենք կոճակը։ Դրանից հետո էջը կթարմացվի և դրա կոդը կկատարվի կրկին, բայց արդեն ֆորմայի տվյալներով։

Դիտարկենք օրինակով։ Ենթադրենք, մենք ունենք մեկ ֆայլում ֆորմա և դրա մշակում.

<form action="" method="GET"> <input name="test1"> <input name="test2"> <input type="submit"> </form> <?php var_dump($_GET); ?>

Էջ առաջին մուտք գործելիս var_dump ֆունկցիան կարտածի դատարկ զանգված։ Իսկ ֆորմա ուղարկելուց հետո այն կարտածի արդեն ֆորմայի տվյալները։ Այսինքն առաջին անգամ $_GET-ը կլինի դատարկ, իսկ երկրորդ անգամ - կպարունակի ֆորմայի տվյալները։

Սա կարող է հանգեցնել խնդիրների։ Ենթադրենք, օրինակ, մենք ֆորմայի մեջ կմուտքագրենք թվեր և ցանկանում ենք էկրանին արտածել այդ թվերի գումարը.

<form action="" method="GET"> <input name="test1"> <input name="test2"> <input type="submit"> </form> <?php echo $_GET['test1'] + $_GET['test2']; ?>

Այս դեպքում էջ առաջին մուտք գործելիս մենք կտեսնենք PHP-ի սխալներ, որոնք կապված են նրա հետ, որ $_GET զանգվածը դատարկ է, իսկ մենք դիմում ենք նրա տարրերին։

Այստեղ պետք է ասել, որ ձեր մոտ սխալները կարող են և չհայտնվել բրաուզերում։ Այս դեպքում ստուգեք, որ ձեր մոտ միացված է PHP-ի սխալների արտածումը, ինչպես նաև համոզվեք, որ ձեր մոտ առաջին մուտքն է էջ և հասցեի տողում չկան ֆորմայի տվյալներ։

Ուղղենք խնդիրը։ Դրա համար ավելացնենք պայման, որում կստուգենք, որ ֆորման ուղարկված է։

Օրինակ, կարելի է ստուգել $_GET-ը ոչ դատարկության վրա։ Եթե $_GET-ը դատարկ չէ - ապա ֆորման ուղարկված է և կարելի է կատարել գումարումը։ Հակառակ դեպքում մենք դեռ էջ առաջին մուտքն ենք և գումարումը կատարված չի լինի։ Ահա ուղղված կոդը.

<form action="" method="GET"> <input name="test1"> <input name="test2"> <input type="submit"> </form> <?php if (!empty($_GET)) { echo $_GET['test1'] + $_GET['test2']; } ?>

Հարցրեք օգտատիրոջից ազգանունը, անունը և հայրանունը։ Ֆորման ուղարկելուց հետո արտածեք էկրանին մուտքագրված տվյալները։

Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել