⊗ppPmRdIns 405 of 447 menu

PHPда даруҳал редирект

header функциси ёрдамида бажарилган редирект ушбу функция чақирилган пайтда sodir бўлмайди. Чунки PHP ўзи редиректни бажармай, фақат браузерга мос HTTP сарлавҳасини жўнатади.

Бу шунни англатадки, редирект фақат PHP скриптни oxиригача бажарганидан сўнг sodir бўлади. Шу сабабдан турли xил паразит таъсирлар юз белиши мумкин.

Мисол учун, куйидаги кодда биз редиректни ёки базага сўровни бажаришни истаймиз. Аммо редирект учун буйруқ бўлганида ҳам базага сўров бажарилади:

<?php if ($_GET['test']) { header('Location: test.php'); } $query = "UPDATE users SET changed=1 WHERE id=1"; mysqli_query($link, $query); // редиректда ҳам бажарилади! ?>

Бундай муаммолардан қочиш учун редиректдан сўнг дарҳол die функциясини чақириш керак, бу эса скриптнинг ишлашини даруҳал тўхтатади ва редирект дарҳол sodir бўлади:

<?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çeOʻzbekTiếng Việt
Биз веб-сайт ишлаши, таҳлил қилиш ва персоналлаштириш учун кукидан фойдаланамиз. Маълумотларни қайта ишлаш Махфийлик сиёсатига мувофиқ амалга оширилади.
ҳаммасини қабул қилиш мослаштириш рад этиш