⊗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
আমরা সাইট পরিচালনা, বিশ্লেষণ এবং ব্যক্তিগতকরণের জন্য কুকি ব্যবহার করি। ডেটা প্রক্রিয়াকরণ গোপনীয়তা নীতি অনুযায়ী করা হয়।
সব গ্রহণ করুন কনফিগার করুন প্রত্যাখ্যান করুন