⊗ppPmRdIns 405 of 447 menu

PHP-де лездік бағыттау

header функциясы арқылы жасалған бағыттау осы функцияны шақырған сәтте орын алмайды. Себебі PHP өзі бағыттауды орындамайды, ол тек сәйкес HTTP тақырыпшасын браузерге жібереді.

Бұл бағыттау PHP скриптінің соңына дейін орындалғаннан кейін ғана орындалатынын білдіреді. Бұл әртүрлі қажетсіз әсерлерді тудыруы мүмкін.

Мысал ретінде, келесі кодта біз бағыттауды немесе дерекқорға сұраныс жасауды қалаймыз. Бірақ дерекқорға сұраныс бағыттау командасы болған жағдайда да орындалады:

<?php if ($_GET['test']) { header('Location: test.php'); } $query = "UPDATE users SET changed=1 WHERE id=1"; mysqli_query($link, $query); // бағыттау кезінде де орындалады! ?>

Осындай мәселелерді болдырмау үшін бағыттаудан кейін бірден die функциясын шақыру керек, бұл скрипттің орындалуын лезде тоқтатады және бағыттау бірден орындалады:

<?php if ($_GET['test']) { header('Location: test.php'); die(); } $query = "UPDATE users SET changed=1 WHERE id=1"; mysqli_query($link, $query); ?>

Кодтаңызда қандай да бір қажетсіз әсерді қайталаңыз. Содан кейін оны die функциясы арқылы түзеңіз.

Қазақ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართული한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Біз сайттың жұмысы, аналитика және персонализация үшін cookie файлдарын қолданамыз. Деректерді өңдеу Құпиялылық саясаты бойынша жүреді.
барлығын қабылдау баптау қабылдамау