কম্পিউটার টিউটোরিয়াল

PHP-এ ফর্ম সাবমিট করার সময় একাধিক ইনসার্ট প্রতিরোধ করা


PHP সেশন ব্যবহার করে ফর্ম সাবমিট করার সময় একাধিক ইনসার্ট প্রতিরোধ করা যায়। PHP সেশন একটি সেশন ভেরিয়েবল সেট করে (যেমন $_SESSION['posttimer']) যা POST-এ বর্তমান টাইমস্ট্যাম্প সেট করে। PHP-এ ফর্ম প্রসেস করার আগে, $_SESSION['posttimer'] ভেরিয়েবলটির অস্তিত্ব চেক করা হয় এবং একটি নির্দিষ্ট টাইমস্ট্যাম্প পার্থক্য (যেমন ২ বা ৩ সেকেন্ড) চেক করা হয়। এইভাবে, যেসব ইনসার্ট আসলে ডুপ্লিকেট সেগুলো চিহ্নিত করে সরানো যায়।

সरल ফর্ম:

// form.html <form action="my_session_file.php" method="post">    <input type="text" name="bar" />    <input type="submit" value="Save"> </form>

উপরোক্তে 'my_session_file.php'-র রেফারেন্সে নিচের কোড লাইনগুলো থাকবে:

উদাহরণ

if (isset($_POST) && !empty($_POST)) {    if (isset($_SESSION['posttimer'])) {       if ( (time() - $_SESSION['posttimer']) <= 2) {          // গত POST-এর থেকে ২ সেকেন্ড কম সময়       } else {          // গত POST-এর থেকে ২ সেকেন্ড বেশি সময়       }    }    $_SESSION['posttimer'] = time(); }

আউটপুট

এটি নিচের আউটপুট উত্পন্ন করবে:

The unique form submitted data.

posttimer সেশন ভেরিয়েবল সেট করা হয় এবং যখন গত POST অপারেশনের আগে ২ সেকেন্ড বা তার কম সময় পার্থক্য থাকে, তবে এটি সরানো যেতে পারে। অন্যথায় এটি সংরক্ষিত থাকে। time ফাংশন কল করা হয় এবং মান posttimer সেশন ভেরিয়েবলে অ্যাসাইন করা হয়।


  1. জাভাস্ক্রিপ্টে মাল্টি-স্টেপ ফর্ম (Multi-step Form) তৈরি করা

  2. PHP ফাইলে এরর ডিসপ্লে করা

  3. উইন্ডোজ ১০-এ টাইপিং সময় টাচপ্যাড ক্লিক প্রতিরোধ করুন

  4. ওয়ানড্রাইভে একাধিক ফাইল ডিলিট করার সময় নোটিফিকেশন দেখানোর পদ্ধতি