পিএইচপি এসকিউএল ওয়ার্ডপ্রেস জাভাস্ক্রিপ্ট জেকুয়েরি এইচটিএমএল
ফোরাম
×

পিএইচপি টিউটোরিয়াল

হোম-HOME পরিচিতি-Introduction ইনস্টল-Install গঠনপ্রনালী-Syntax চলক-Variable পিএইচপি Echo / Print তথ্যের ধরণ-Data Types কনস্ট্যান্ট-Constant অপারেটর-Operator ফাংশন-Function সুপারগ্লোভাল-Superglobal

কন্ট্রোল স্টেটমেন্ট

if স্টেটমেন্ট if...Else স্টেটমেন্ট Switch স্টেটমেন্ট While লুপ DO...While লুপ For লুপ

পিএইচপি এ্যারে এবং স্ট্রিং

এ্যারে-Array এ্যারে সর্টিং -Array Sorting মাল্টি এ্যারে-Multi Array স্ট্রিং-String

পিএইচপি এডভান্স

তারিখ এবং সময় পিএইচপি include ফাইল হ্যান্ডলিং-File Handling ফাইল খোলা/পড়া ফাইল তৈরি/লিখা ফাইল আপলোড ফাইল ডাউনলোড কুকি-Cookie সেশন-Session ফিল্টার-Filter এডভান্স ফিল্টার-Advance Filter এঁরর হ্যান্ডলিং-Error Handling এক্সেপশন হ্যান্ডেলিং-Exception Handling

পিএইচপি ফরম

ফরম হ্যান্ডলিং ফরম ভ্যালিডেশন আবশ্যক ফরম ফিল্ড ফরম URL/E-mail সম্পূর্ণ ফরম

MySQL ডেটাবেজ

MySQL ডেটাবেজ MySQL ডেটাবেজ সংযোগ MySQL ডেটাবেজ তৈরী MySQL টেবিল তৈরী MySQL তথ্য ইনসার্ট MySQL শেষ আইডি পান MySQL একাধিক তথ্য ইনসার্ট MySQL প্রিপেয়ার্ড স্টেটমেন্ট MySQL তথ্য সিলেক্ট MySQL তথ্য ডিলিট MySQL তথ্য আপডেট MySQL সীমিত তথ্য সিলেক্ট

পিএইচপি- এক্সএমএল

PHP XML Parser PHP SimpleXML Parser PHP XML Parser PHP SimpleXML - Get PHP XML Expat PHP XML Dom

পিএইচপি - এজাক্স

পিএইচপি AJAX পরিচিতি AJAX পিএইচপি AJAX ডেটাবেজ AJAX এক্সএমএল AJAX সারাসরি সার্চ AJAX RSS রির্ডার AJAX Poll

পিএইচপি অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং(OOP)

OOP পরিচিতি OOP class তৈরী OOP objects তৈরী OOP $this কিওয়ার্ড OOP মেথড এবং প্রোপার্টি চেইনিং OOP অ্যাক্সেস মোডিফায়ার OOP ম্যাজিক মেথড এবং কন্সটেন্ট OOP ইনহেরিটেন্স OOP Abstract class এবং method OOP ইন্টারফেস OOP পলিমরফিজম OOP টাইপ হিন্টিং() OOP টাইপ হিন্টিনং ইন্টারফেস OOP স্ট্যাটিক মেথোড এবং প্রোপার্টি

 

PHP এবং AJAX ভোট গ্রহণ


AJAX ব্যবহার করে ভোট গ্রহণ

এই অধ্যায়ে আমরা দেখবো AJAX ব্যবহার করে কিভাবে একটি ডায়ানামিক ভোট গ্রহণ সিস্টেম তৈরি করা যায়।

এক্ষেত্রেও আমরা পূর্বের ন্যায় কোডসমূহকে তিন ভাগে বিভক্ত করবোঃ এইচটিএমএল কোড, জাভাস্ক্রিপ্ট(AJAX) কোড এবং পিএইচপি কোড। সুতরাং দেরি না করে চলুন কোডিং করা শুরু করি।

উদাহরণ: এইচটিএমএল কোড
<!DOCTYPE html>
<html>
<head>
 <title>পিএইচপি এবং  এজ্যাক্স ব্যবহার করে ভোট গ্রহণ</title>
</head>
<body>

<div id="poll">
<h3>আমাদের ওয়েব-সাইটটি কি আপনার পছন্দ?</h3>
<form>
হ্যাঃ
<input type="radio" name="poll_vote"
value="0" onclick="vote(this.value)">
নাঃ
<input type="radio" name="poll_vote"
value="1" onclick="vote(this.value)">
</form>
</div>


</body>
</html>

উপরের উদাহরণে ইউজার যখন কোনো একটি রেডিও বাটন সিলেক্ট করবে, তখন vote() ফাংশনটি সম্পাদিত হবে এবং ভোটের ফলাফল প্রদর্শিত হবে। onclick ইভেন্ট এর মাধ্যমে এই ফাংশনটি সম্পাদিত হয়।

উদাহরণঃ এইচটিএমএল এর সাথে ব্যবহৃত AJAX কোড
<script>
function vote(integer) {
  if (window.XMLHttpRequest) {
     request=new XMLHttpRequest();
  } else {
     request = new ActiveXObject("Microsoft.XMLHTTP");
  }
  request.onreadystatechange = function() {
    if (request.readyState == 4 && request.status == 200) {
      document.getElementById("poll").innerHTML = request.responseText;
    }
  }
  request.open("GET","poll_vote.php?poll_vote="+integer,true);
  request.send();
}
</script>

কোডের ব্যাখ্যাঃ

যেকোন একটি রেডিও বাটন সিলেক্ট করলে vote() ফাংশনটি সম্পাদিত হয়।

vote() ফাংশনের মাধ্যমে নিম্নোক্ত প্রক্রিয়াসমূহ সম্পন্ন হয়।

  • একটি XMLHttpRequest অবজেক্ট তৈরি করবে।
  • কার্যসম্পাদনের জন্য সার্ভার প্রস্তুত হলে এটি একটি ফাংশন তৈরি করবে।
  • সার্ভারে অবস্থিত "poll_vote.php" ফাইলে একটি অনুরোধ পাঠাবে।
  • লক্ষ্য করুন আমরা "poll_vote.php" ফাইলের সাথে একটি প্যারামিটার poll_vote যুক্ত করেছি যা সার্ভারে একটি integer ভ্যারিয়েবল পাঠায়।
  • integer ভ্যারিয়েবলটি রেডিও বাটনের ভ্যালু ধারন করে।

পিএইচপি ফাইল

উপরের জাভাস্ক্রিপ্ট কোড এর মাধ্যমে এই পিএইচপি ফাইল(poll_vote.php) এর সাথে যোগাযোগ সৃষ্টি করা হয়।

উদাহরণঃ poll_vote.php ফাইল
<?php
$poll_vote = $_REQUEST['poll_vote'];

// টেক্সট ফাইলের কন্টেন গুলো ধারন করে
$textfile = "poll_result.txt";
$content = file($textfile);

// প্রাপ্ত ফলাফল গুলোকে অ্যারের মধ্যে রাখবে
$array = explode("||", $content[0]);
$yes = $array[0];
$no = $array[1];

if ($poll_vote == 0) {
   $yes = $yes + 1;
}
if ($poll_vote == 1) {
   $no = $no + 1;
}

// টেক্সট ফাইলে ভোট(poll_votes) জমা দেওয়া
$insertpoll_vote = $yes."||".$no;
$fp = fopen($textfile,"w");
fputs($fp,$insertpoll_vote);
fclose($fp);
?>

<table>
    <tr>
        <td>হ্যাঁঃ</td>
        <td>
            <img src="poll_image1.gif" width='NAN'height='20'>
            <?php echo(100*round($yes/($no+$yes),2)); ?>%
        </td>
    </tr>
    <tr>
        <td>নাঃ</td>
        <td>
            <img src="poll_image2.gif" width='NAN'height='20'>
            <?php echo(100*round($no/($no+$yes),2)); ?>%
        </td>
    </tr>
</table>

জাভাস্ক্রিপ্ট যখন ভোট গ্রহনের জন্য পিএইচপি ফাইলে অনুরোধ পাঠায় তখন নিম্নোক্ত প্রক্রিয়াসমূহ সম্পন্ন হয়ঃ

  • প্রথমেই AJAX কর্তৃক পাঠানো প্যারামিটার গ্রহণ করবে।
  • "poll_result.txt" ফাইল এর কন্টেন্ট $textfile ভ্যারিয়েবলে জমা হয়।
  • $textfile এর কন্টেন্ট এর জন্য একটি array তৈরি করা হয় এবং নির্বাচিত ভ্যারিয়েবলে এক যোগ করা হয়।
  • "poll_result.txt" ফাইলটি আপডেট হয়।
  • চিত্রসহকারে ফলাফল প্রদর্শন করানো হয়।

টেক্সট ফাইল

"poll_result.txt" ফাইলের মধ্যে ভোট জমা পড়বে এবং নিম্নের ফরম্যাটে সংরক্ষিত হবেঃ

0||0

প্রথম সংখ্যাটি "হ্যা" ভোট কে বুঝায় এবং দ্বিতীয় সংখ্যাটি "না" ভোটকে বুঝায়।

সতর্কতাঃ ওয়েব সার্ভার ব্যাতিত অন্য কাউকে টেক্সট ফাইল এডিট করার অ্যাক্সেস দেয়া উচিৎ নয়!


আপনি উপরের উদাহরণের এইচটিএমএল এবং জাভাস্ক্রিপ্ট কোড গুলোর সমন্বয়ে একটি ফাইল এবং পিএইচপি কোডগুলোর জন্য একটি ফাইল তৈর করে Ajax সম্বলিত এইচটিএমএল ফাইলটি রান করালে বাউজারে নিম্নের ন্যায় ফলাফল দেখবেন।

AJAX এর মাধ্যমে ভোট এর ফলাফল দেখার জন্য "হ্যাঁ" অথবা "না" বাটন সিলেক্ট করুনঃ

আমাদের ওয়েব-সাইটটি কি আপনার পছন্দ?

হ্যাঃ নাঃ