JavaScript AJAX এবং PHP দিয়ে ডেটা সাবমিট

JavaScript AJAX এবং PHP দিয়ে ডেটা সাবমিট – সম্পূর্ণ বাংলা টিউটোরিয়াল

AJAX (Asynchronous JavaScript and XML) দিয়ে আপনি কোনো পেজ রিফ্রেশ না করেই সার্ভারে ডেটা পাঠাতে বা নিতে পারবেন। এখানে আমরা শিখবো কিভাবে JavaScript দিয়ে AJAX রিকোয়েস্ট করে PHP ফাইলে ডেটা পাঠাবেন এবং রেসপন্স নিবেন।

Step 1: HTML ফর্ম তৈরি করুন

<input type="text" id="name" placeholder="নাম লিখুন">   <!-- ইউজার ইনপুট ফিল্ড -->
<button onclick="sendData()">পাঠান</button>            <!-- সাবমিট বাটন -->

<div id="response"></div>                            <!-- সার্ভার থেকে রেসপন্স দেখানোর div -->

⚙️ Step 2: JavaScript AJAX কোড

<script>
function sendData() {
  var name = document.getElementById("name").value;         // ইউজারের ইনপুট ভ্যালু নিচ্ছি

  var xhr = new XMLHttpRequest();                           // একটি AJAX রিকোয়েস্ট অবজেক্ট তৈরি করছি
  xhr.open("POST", "submit.php", true);                     // POST মেথডে submit.php ফাইলে রিকোয়েস্ট
  xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); // POST ডেটার হেডার সেট

  xhr.onreadystatechange = function() {
    if (xhr.readyState === 4 && xhr.status === 200) {
      document.getElementById("response").innerHTML = xhr.responseText; // সার্ভার থেকে রেসপন্স আসলে দেখানো হচ্ছে
    }
  };

  xhr.send("username=" + encodeURIComponent(name));         // ইনপুট ডেটা encode করে পাঠানো হচ্ছে
}
</script>

️ Step 3: PHP ফাইল (submit.php)

<?php
if (isset($_POST["username"])) {                    // চেক করা হচ্ছে ডেটা এসেছে কিনা
  $name = htmlspecialchars($_POST["username"]);     // ইউজার ইনপুট স্যানিটাইজ করা হচ্ছে
  echo "স্বাগতম, " . $name . "!";                   // রেসপন্স হিসেবে পাঠানো হচ্ছে
} else {
  echo "ডেটা পাওয়া যায়নি।";                         // ডেটা না এলে এরর মেসেজ
}
?>

বিস্তারিত ব্যাখ্যা:

  • AJAX ব্যবহার করে আমরা submit.php ফাইলে POST রিকোয়েস্ট পাঠিয়েছি।
  • ইনপুট ফিল্ড থেকে ডেটা নেওয়ার পর তা encodeURIComponent() দিয়ে সঠিকভাবে encode করা হয়েছে।
  • সার্ভার থেকে যেই রেসপন্স এসেছে তা innerHTML দিয়ে div এ দেখানো হয়েছে।
  • PHP ফাইলে $_POST দিয়ে ডেটা রিসিভ করা হয়েছে এবং htmlspecialchars() দিয়ে XSS প্রতিরোধ করা হয়েছে।

 

Leave a Reply