⊗ppPmRdIns 405 of 447 menu

PHP'de Anında Yönlendirme

header fonksiyonu kullanılarak yapılan yönlendirme, bu fonksiyon çağrıldığı anda gerçekleşmez. Sonuçta PHP yönlendirmeyi kendisi yapmaz, sadece ilgili HTTP başlığını tarayıcıya gönderir.

Bu, yönlendirmenin ancak PHP tüm betiği sonuna kadar çalıştırdığında gerçekleşeceği anlamına gelir. Bu durum çeşitli istenmeyen etkilere yol açabilir.

Örnek olarak, aşağıdaki kodda bir yönlendirme yapmak veya bir veritabanı sorgusu çalıştırmak istiyoruz. Ancak veritabanı sorgusu, bir yönlendirme komutu olsa bile çalıştırılacaktır:

<?php if ($_GET['test']) { header('Location: test.php'); } $query = "UPDATE users SET changed=1 WHERE id=1"; mysqli_query($link, $query); // yönlendirme olsa bile çalışır! ?>

Bu tür sorunlardan kaçınmak için, yönlendirmeden hemen sonra betiğin çalışmasını anında sonlandıracak ve yönlendirmenin hemen gerçekleşmesini sağlayacak olan die fonksiyonu çağrılmalıdır:

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

Kodunuzda herhangi bir istenmeyen etkiyi canlandırın. Ardından bunu die fonksiyonuyla düzeltin.

Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet