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

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

হোম-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 স্ট্যাটিক মেথোড এবং প্রোপার্টি

 

পিএইচপি সম্পূর্ণ ফর্ম এর উদাহরণ


আমরা এই অধ্যায়ে দেখবো, যদি কোনো ইউজার সম্পূর্ণ ফর্ম পূরণ না করে সাবমিট বাটনে ক্লিক করে তাহলে ফর্ম সাবমিটে কিভাবে বাধা দিতে হয় এবং ইনপুটকৃত তথ্য/তথ্যসমূহ স্ব-স্ব ইনপুট ফিল্ডে কিভাবে জমা রাখতে বা দেখাতে হয়।


পিএইচপির মাধ্যমে ফর্ম এ value জমা রাখা বা দেখানো

ইউজার সাবমিট বাটনে ক্লিক করার পর ইনপুট ফিল্ডের মধ্যে ভ্যালু দেখানোর জন্য name এবং email ইনপুট ফিল্ডের value এট্রিবিউটের মধ্যে আমরা যথাক্রমে খুবই সাধারণ পিএইচপি স্ক্রিপ্ট value="<?php echo $name;?>" এবং value="<?php echo $email;?>" যুক্ত করেছি।

মেসেজ টেক্সট-এরিয়া ফিল্ড <textarea> এবং </textarea> ট্যাগের মধ্যে <?php echo $messege;?> স্ক্রিপ্টটি ব্যবহার করেছি।

উপরের এই ছোট ছোট স্ক্রিপ্টসমূহ $name, $email এবং $messege ভ্যারিয়েবলের ভ্যালু নিজ নিজ ইনপুট ফিল্ডে আউটপুট হিসাবে দেখাবে। 

তারপর, কোন্‌ রেডিও বাটনটি check করা হয়েছে এটাও আমাদের দেখানো দরকার। এটার জন্য আমাদেরকে value এট্রিবিউট এর পরিবর্তে checked এট্রিবিউটটি ম্যানিপুলেট(manipulate) করতে হবে। যেমন- রেডিও বাটনের এট্রিবিউট gender=="male" এর জন্য পিএইচপি কোড <?php if (isset($gender) && $gender=="male") echo "checked='checked'";?>


উপরের সমস্ত পিএইচপি কোডসহ এইচটিএমএল ফর্ম
নামঃ     <input type="text" name="name" value="<?php echo $name;?>">
ই-মেইলঃ  <input type="text" name="email" value="<?php echo $email;?>">
লিঙ্গঃ     <input type="radio" name="gender" <?php if (isset($gender) && $gender=="male")
        echo "checked='checked'";?> value="male">পুরুষ
        <input type="radio" name="gender" <?php if (isset($gender) && $gender=="female")
        echo "checked='checked'";?> value="female">মহিলা
মেসেজঃ   <textarea name="messege" rows="5" cols="40"><?php echo $messege;?></textarea>

পিএইচপি সম্পূর্ণ ফর্ম এর উদাহরণ

ফর্ম সাবমিট করার পরে ইনপুট ডেটা সম্পূর্ণ ভ্যালিড না হওয়া পর্যন্ত যেন আউট না দেখায় সেজন্য আমরা একটি শর্তের উপর ভিত্তিকরে ইনপুট এর আউটপুট কোড সম্পাদন করেছি।

উদাহরণঃ পিএইচপি ব্যবহার করে ফর্ম ডেটা সাবমিট এবং ভ্যালিডেশন এর সম্পূর্ণ কোড।
<!DOCTYPE html>
<html>
<head>
   <meta charset="utf-8">
    <title>পিএইচপি উদাহরণ</title>
    <style media="screen">
   .error{
     color: red;
   }
 </style>
</head>
<body>

<!-- এইচটিএমএল ফর্ম ভ্যালিডেশন এর জন্য  পিএইচপি স্ক্রিপ্ট -->
<?php
//ফাঁকা ভ্যারিয়েবল ডিক্লেয়ারেশন
$name = $email = $gender = $messege = "";
$nameError = $emailError = $genderError = "";
$nameOutput = $emailOutput = $genderOutput = $messegeOutput = "";

//ফর্ম মেথড POST কিনা না চেক করে, POST হলে ফর্ম থেকে ভ্যালু সংগ্রহ করে।
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    // POST ভ্যালু ফাঁকা কিনা চেক করে এরর ম্যাসেজ তৈরি করে
    if (empty($_POST["name"])) {
        $nameError = "নাম পূরন করা আবশ্যক";
    } else {
        //ভ্যালু ফাঁকা না হলে ভ্যালিডিটি যাচাই করে
        $name = verify_input($_POST["name"]);
        // নামের মধ্যে শুধুমাত্র অক্ষর(letter) এবং whitespace রয়েছে কিনা চেক করে
        if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
            $nameError = "শুধুমাত্র অক্ষর(letters) এবং white space ব্যবহার করুন";
        }
    }


    //একই ভাবে, নিচের কোডসমূহ বুঝার জন্য উপরের কমেন্ট লক্ষ্য করুন
    if (empty($_POST["email"])) {
        $emailError = "ইমেইল পূরন করা আবশ্যক";
    } else {
        $email = verify_input($_POST["email"]);
        // ইমেইলের ফরম্যাট ঠিক আছে কিনা তা চেক
        if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
          $emailError = "ইমেইল ফরম্যাট ভ্যালিড নয়";
        }
    }

    if (empty($_POST["gender"])) {
        $genderError = "লিঙ্গ নির্ধারণ আবশ্যক";
    } else {
        $gender = verify_input($_POST["gender"]);
    }

    if (empty($_POST["messege"])) {
        $messege = "";
    } else {
        $messege = verify_input($_POST["messege"]);
    }

    // সকল ফিল্ডগুলো সঠিকভাবে ইনপুট হয়েছে কিনা  পরিক্ষা করে এবং true হলে  ফলাফল রিটার্ন করে
    if ($nameError == "" && $emailError == "" && $genderError == "") {
    $nameOutput = $name;
    $emailOutput = $email;
    $genderOutput = $gender;
    $messegeOutput = $messege;
    }

}

//ফর্ম ডেটা ভ্যালিডেশন কোড
function verify_input($data) {
    $data = trim($data);
    $data = stripslashes($data);
    $data = htmlspecialchars($data);
    return $data;
}
?>

<!-- এইচটিএমএল অংশ -->
<h2>পিএইচপি ফর্ম ভ্যালিডেশন উদাহরণ</h2>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
    নামঃ <input type="text" name="name" value="<?php echo $name;?>"><span class="error">* <?php echo $nameError;?></span>
    <br><br>
    ই-মেইলঃ <input type="text" name="email" value="<?php echo $email;?>"><span class="error">* <?php echo $emailError;?></span>
    <br><br>
    লিঙ্গঃ <input type="radio" name="gender"
        <?php if (isset($gender) && $gender=="male")
        echo "checked";?> value="male">পুরুষ
        <input type="radio" name="gender"
        <?php if (isset($gender) && $gender=="female")
        echo "checked";?> value="female">মহিলা<span class="error">* <?php echo $genderError;?></span>
   <br><br>
    মেসেজঃ <textarea name="messege" rows="5" cols="40">
        <?php echo $messege;?></textarea>
    <br><br>
        <input type="submit" name="submit" value="Submit">
</form>

<!-- ফর্ম এর মাধ্যমে ইনপুটকৃত তথ্যের আউটপুট -->
<?php
echo "<h2>আপনার ইনপুটকৃত তথ্যঃ</h2>";
echo $nameOutput. "<br>";
echo $emailOutput. "<br>";
echo $genderOutput. "<br>";
echo $messegeOutput. "<br>";
?>
</body>
</html>

ফলাফল