⊗ppPmRdIns 405 of 447 menu

Azonnali átirányítás PHP-ban

A header függvénnyel végrehajtott átirányítás nem a függvény hívásakor történik meg. Hiszen a PHP maga nem hajtja végre az átirányítást, csak egy megfelelő HTTP fejlécet küld a böngészőnek.

Ez azt jelenti, hogy az átirányítás csak akkor fog megtörténni, amikor a PHP végrehajtja a teljes szkriptet a végéig. Emiatt különféle káros hatások léphetnek fel.

Példaként a következő kódban azt szeretnénk, hogy vagy átirányítás történjen, vagy adatbázis-lekérdezés. De az adatbázis-lekérdezés végrehajtódik, még akkor is, ha az átirányítás parancsa szólt:

<?php if ($_GET['test']) { header('Location: test.php'); } $query = "UPDATE users SET changed=1 WHERE id=1"; mysqli_query($link, $query); // végrehajtódik még átirányítás esetén is! ?>

Hogy elkerüljük az ilyen problémákat, közvetlenül az átirányítás után meg kell hívni a die függvényt, amely azonnal megszakítja a szkript végrehajtását, és az átirányítás azonnal megtörténik:

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

Reprodukáljon valamilyen káros hatást a kódjában. Majd javítsa ki a die függvény segítségével.

Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás