L
o
a
d
i
n
g

support@shipsoft.net

কিভাবে HTML Template এর Contact Form Dynamic করবেন PHP দিয়ে ?

Shipon 14/Nov/2017

হাই সবাই কেমন আছেন আজ আপনাদের জন্য দারুন একটি জিনিষ নিয়ে এসেছি । আমরা যখন একটা HTML Template থিমফরেষ্টে সাবমিট করি তখন ৯৯ % টেম্পলেটেই Contact Form থাকে  এবং আমরা PHP না জানার ফলে Contact Form গুলো Dynamic করে দিতে পারিনা না তাই সেলটাও কম আশে আবার অনেকে নিজের Personal Portfolio এর জন্য ব্যবহার করেন কিন্ত PHP না জানার করনে Contact Form ডায়নামিক করতে পারেননা । আজকের আমার এই লেখাটি শুধু যারা নতুন PHP সমন্ধে ভালো জানেননা তাদের জন্য। আমরা আমাদের তৈরি করা একটা Readymade script দিয়ে দেখাব কিভাবে আপনি Contact Form Dynamic করবেন ।

 

প্রথমে আপনার HTML Template এর যে ফোল্ডার আছে সেখানে একটা ফাইল তৈরি করুন নাম যা খুশি দিন আমি দিলাম contact-form.php অবশ্যই নামের মাঝে ফাকা রাখা যাবেনা তারপর এই ফাইটা যেকোন একটা এডিটরে ওপেন করুন করে নিচে আমার দেওয়া কোড গুলো পেষ্ট করুন :

 

<?php
// Naming Constant
define( "RECIPIENT_NAME", "John Doe" );
define( "RECIPIENT_EMAIL", "someone@mail.com" );

// Values
$success = false;
$senderName = isset( $_POST['username'] ) ? preg_replace( "/[^\.\-\' a-zA-Z0-9]/", "", $_POST['username'] ) : "";
$senderEmail = isset( $_POST['email'] ) ? preg_replace( "/[^\.\-\_\@a-zA-Z0-9]/", "", $_POST['email'] ) : "";
$subject = isset( $_POST['subject'] ) ? preg_replace( "/[^\.\-\' a-zA-Z0-9]/", "", $_POST['subject'] ) : "";
$message = isset( $_POST['message'] ) ? preg_replace( "/(From:|To:|BCC:|CC:|Subject:|Content-Type:)/", "", $_POST['message'] ) : "";

// Send the email
if ( $senderName &amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp; $senderEmail &amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp; $message ) {
 $recipient = RECIPIENT_NAME . " &amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;" . RECIPIENT_EMAIL . "&amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;";
 $headers = "From: " . $senderName . " &amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;" . $senderEmail . "&amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;";
 $success = mail( $recipient, $subject, $message, $headers );
 //Set Location
 header('Location: index.html');
}
?>

 

এখন ডায়নামিক করার পালা প্রথমে আপনি আপনার index.html ফাইলে বা আপনার ফ্রমটা যে ফাইলে আছে
সেটা ওপেন করুন তারপর আপনার ফ্রমের From tag এ <form action=”contact-form.php“> এখানে  আপনরা ফ্রম এর HTML কোড থাকবে </form> এই ভাবে আপনার তৈরি করা ফাইলটা লিংক করিয়ে দিন একটু আগে আমরা যে ফাইলটা তৈরি করেছি মূলত action=”” এর মধ্য যে লিংক দিবেন সেই লিংকে চলে যাবে সাবমিট করার পর । 

 

লিংক করানো শেষ হলে এখন ডায়নামিক করার পালা আমি ধরে নিলাম আপনার ফ্রমে  ৪ টা input টেগ আছে নিচে দেওয়া হলো ফ্রমটি কেমন হবে

 


<form action="contact-form.php">
 <input type="text" name="username" placeholder="Name" required>
 <input type="email" name="email" placeholder="Email" required>
 <textarea name="message" placeholder="Your Message" required></textarea>
 <button type="send">Send Message</button>
</form>

এই খানে আপনার input tag এ অবশ্যই একটা করে name নিতে হবে কারন আমাদের নাম এর মাধ্যমে ফ্রম এর ডাটা গুলো নিতে হবে । আমরা প্রথমে username টা ডায়নামিক করি আমরা প্রথমে Username এ একটা নাম দিলাম name নামে


<input type="text" name="name" placeholder="Name" required>

 

তারপর আমরা চলে যাব আমরা যে ফাইল তৈরি করেছি সেই ফাইলে contact-form.php


$senderName = isset( $_POST['username'] ) ? preg_replace( "/[^\.\-\' a-zA-Z0-9]/", "", $_POST['username'] ) : "";

তারপর এইখানে username এর যায়গায় আমরা input এ যে নামটা দিয়েছে ওটা কপি করে পেষ্ট করব অথবা লিখব যেন ভুল না হয় আমরা name=”name ” দিয়েছিলাম


$senderName = isset( $_POST['name'] ) ? preg_replace( "/[^\.\-\' a-zA-Z0-9]/", "", $_POST['name'] ) : "";

এই ভাবে আমরা সব গুলো name দিয়ে দেব

HTML form

 <input type="text" name="name" placeholder="Name" required>
 <input type="email" name="useremail" placeholder="Email" required>
 <textarea name="yourmessage" placeholder="Your Message" required></textarea>

contact-form.php

$senderName = isset( $_POST['name'] ) ? preg_replace( "/[^\.\-\' a-zA-Z0-9]/", "", $_POST['username'] ) : "";
$senderEmail = isset( $_POST['useremail'] ) ? preg_replace( "/[^\.\-\_\@a-zA-Z0-9]/", "", $_POST['useremail'] ) : "";
$message = isset( $_POST['yourmessage'] ) ? preg_replace( "/(From:|To:|BCC:|CC:|Subject:|Content-Type:)/", "", $_POST['yourmessage'] ) : "";

 

এই ভাবে সব গুলো চেন্জ করে দিন করা শেষ হলে এখন আমাদের কাজ হলো কেউ ফ্রম পূরন করে সবমিট করলে কোন মেইলে যাবে এটা করার জন্য এই ২টা জিনিষ চেন্জ করতে হবে


define( "RECIPIENT_NAME", "John Doe" );
define( "RECIPIENT_EMAIL", "someone@mail.com" );

 

এখানে John Doe এর জায়গায় আপনার নাম লিখুন এবং someone@mail.com এর জায়গায় আপনার ইমেইল দিন এই ইমেইলে মেইল যাবে

 

তাহলে আমদের কাজ শেষ তার পরও একটু মিলিয়ে নিন

 

HTML ফ্রম


<form action="contact-form.php">
 <input type="text" name="name" placeholder="Name" required>
 <input type="email" name="useremail" placeholder="Email" required>
 <textarea name="yourmessage" placeholder="Your Message" required></textarea>
 <button type="send">Send Message</button>
</form>

 

contact-from.php ফাইল


<?php
// Naming Constant
define( "RECIPIENT_NAME", "shipon" );
define( "RECIPIENT_EMAIL", "support@shipsoft.net" );
// Values
$success = false;
$senderName = isset( $_POST['username'] ) ? preg_replace( "/[^\.\-\' a-zA-Z0-9]/", "", $_POST['username'] ) : "";
$senderEmail = isset( $_POST['email'] ) ? preg_replace( "/[^\.\-\_\@a-zA-Z0-9]/", "", $_POST['email'] ) : "";
$subject = isset( $_POST['subject'] ) ? preg_replace( "/[^\.\-\' a-zA-Z0-9]/", "", $_POST['subject'] ) : "";
$message = isset( $_POST['message'] ) ? preg_replace( "/(From:|To:|BCC:|CC:|Subject:|Content-Type:)/", "", $_POST['message'] ) : "";
// Send the email
if ( $senderName &amp;amp;&amp;amp; $senderEmail &amp;amp;&amp;amp; $message ) {
 $recipient = RECIPIENT_NAME . " &amp;lt;" . RECIPIENT_EMAIL . "&amp;gt;";
 $headers = "From: " . $senderName . " &amp;lt;" . $senderEmail . "&amp;gt;";
 $success = mail( $recipient, $subject, $message, $headers );
 //Set Location
 header('Location: index.html');
}
?>

 

এখানে একদম নিচে header(‘Location: index.html’); এখানে index.html এর যায়গায় আপনি যে লিংক দিবেন ফ্রম Submit হয়ে Success হলে ওি পেইজে জাবে আমরা হোম পেইজের লিংক দিয়ে রেখেছি যেন সাবমিট হয়ে আগের পেইজে চলে আশে

এখন চেক করার পারা একটা হোষ্টিংএ আপলো করে চেক করে ফেলুন লোকাল সার্ভারে কাজ করবেনা যদি কোন সমস্য় হয় যানাবেন এবং কোন ভুল হলে ক্ষমা দৃষ্টিতে দেখবেন ।

ধন্যবাদ

 

সবার সাথে শেয়ার করুন :

কমেন্ট করুন

Loading...