টেক টিউনস এ পি এইচ পি নিয়ে নিয়মিত পোস্ট করেছেন আমাদের শ্রদ্ধেয় মিঠু ভাই। তার সিরিজ থেকে আমরা পি এইচ পি এর বাসিক ধারনা গুলো পেয়েছি। আমি ব্যাসিক শিখাতে আসি নি। যারা আগে মিঠু ভাই এর পোস্ট পরেন নি তাদের জন্য রিকোয়েস্ট আগে মিঠু ভাই এর পোস্ট গুলো পরুন তারপর এই পোস্ট পরুন।
আমি একটু ভিন্ন ভাবে আপনাদের শিখাতে চাই। পদ্ধতি টা আপনাদের অনেকের জন্যেই বিরক্তি কর হতে পারে। কিন্তু যাদের সত্যি শেখার ইচ্ছে আছে এবং পরিশ্রমী তারা এভাবে শিখলেই অনেক উপক্রিত হবে। আমি পি এইচ পি তে করা ছোট্ট ছোট্ট প্রোগ্রাম নিয়ে আলোচনা করব। আমি নিয়মিত ছোট্ট ছোট্ট প্রোগ্রাম নিয়ে আসব। প্রোগ্রাম বানানো দেখাবো। তার পর আপনাদের বলব সেই প্রোগ্রাম টাকে মডিফাই করে নিজের মত করে বানাতে। আপনারা মডিফাই করতে গিয়ে অনেক ঝামেলায় পড়বেন আর সেই ঝামেলা সল্ভ করতে করতেই পি এইচ পি তে বস হয়ে যাবেন। আমি জানি না কার কত খানি উপকার এ আসবে। কিন্তু আমার পদ্ধতিতে আমি চেষ্টা করে যাব। বাকি টা আপনাদের উপর। যদি আপনার ভালো না লাগে তবে বলে দেবেন, আমি আর পোস্ট করব না। আমি মিঠু ভাই কে বলতে চাই আমার কোন ভুল হলে বা কোথাও ঠেকে গেলে প্লিজ হেল্প করবেন।
তো আসুন আজকের ছোট্ট একটি প্রোগ্রাম বানায়া ফেলাই। তার আগে আপনাদের কে বলি এই পোস্ট পরার আগে আপনাকে অবশ্যই html আর পি এইচ পি সম্পর্কে ব্যাসিক ধারনা থাকতে হবে নয়ত শুধু শুধু আমার পোস্ট পরে চোখ ব্যাথা কইরেন না আর আমারে গালি দিয়েন না।
আসুন আজকে আমরা পি এইচ পি তে একটা contact us ফর্ম বানাই। যেখানে ভিজিটর তার নাম, ইমেইল, ফোন নাম্বার , এবং মেসেজ লিখে সাবমিট করবে আর সেটা মেইল হয়ে আপনার ইমেইল এড্রেস এ চলে যাবে।
তো প্রথমে আমরা এইচ টি এম এল এ একটি পেইজ বানাই।প্রথমে নোটপ্যাড ওপেন করি। এবং সেখানে নিম্নক্ত এইচ টি এম এল কোড বসাই,
<form name="contactform" method="post" action="send_form_email.php"> <table width="450px"> <tr> <td valign="top"> <label for="first_name">First Name *</label> </td> <td valign="top"> <input type="text" name="first_name" maxlength="50" size="30"> </td> </tr> <tr> <td valign="top""> <label for="last_name">Last Name *</label> </td> <td valign="top"> <input type="text" name="last_name" maxlength="50" size="30"> </td> </tr> <tr> <td valign="top"> <label for="email">Email Address *</label> </td> <td valign="top"> <input type="text" name="email" maxlength="80" size="30"> </td> </tr> <tr> <td valign="top"> <label for="telephone">Telephone Number</label> </td> <td valign="top"> <input type="text" name="telephone" maxlength="30" size="30"> </td> </tr> <tr> <td valign="top"> <label for="comments">Comments *</label> </td> <td valign="top"> <textarea name="comments" maxlength="1000" cols="25" rows="6"></textarea> </td> </tr> <tr> <td colspan="2" style="text-align:center"> <input type="submit" value="Submit"> <a href="http://wdforumz.com">web design forum</a> </td> </tr> </table> </form>
এবার এটিকে contactform.htm নাম এ সেইভ করি। হয়ে গেল আমাদের কন্টাক্ট পেইজ।পেইজ টি দেখতে নিম্নের মত হবেঃ
http://maelstrom-media.net/contactform.htm
এবার কাহিনি হচ্ছে। পেইজ তো বানাইলাম কিন্তু এটারে যে ডাটা গুলো সাবমিট করব সেটা মেইল করে কেম্নে পাঠাব? এটাই পি এইচ পি এর কাজ। এবার আসুন পি এইচ পি তে প্রোগ্রাম লিখি।
এবার আবার নোট প্যাড ওপেন করি এবং নিম্নক্ত কোড লিখিঃ
<!--?php if(isset($_POST['email'])) { // EDIT THE 2 LINES BELOW AS REQUIRED $email_to = "[email protected]"; আপনার ইমেইল এড্রেস দিন $email_subject = "Your email subject line"; function died($error) { // your error code can go here echo "We are very sorry, but there were error(s) found with the form you submitted. "; echo "These errors appear below. "; echo $error." "; echo "Please go back and fix these errors. "; die(); } // validation expected data exists if(!isset($_POST['first_name']) || !isset($_POST['last_name']) || !isset($_POST['email']) || !isset($_POST['telephone']) || !isset($_POST['comments'])) { died('We are sorry, but there appears to be a problem with the form you submitted.'); } $first_name = $_POST['first_name']; // required $last_name = $_POST['last_name']; // required $email_from = $_POST['email']; // required $telephone = $_POST['telephone']; // not required $comments = $_POST['comments']; // required $error_message = ""; $email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+.[A-Za-z]{2,4}$/'; if(!preg_match($email_exp,$email_from)) { $error_message .= 'The Email Address you entered does not appear to be valid. '; } $string_exp = "/^[A-Za-z .'-]+$/"; if(!preg_match($string_exp,$first_name)) { $error_message .= 'The First Name you entered does not appear to be valid. '; } if(!preg_match($string_exp,$last_name)) { $error_message .= 'The Last Name you entered does not appear to be valid. '; } if(strlen($comments) < 2) { $error_message .= 'The Comments you entered do not appear to be valid. '; } if(strlen($error_message) > 0) { died($error_message); } $email_message = "Form details below.nn"; function clean_string($string) { $bad = array("content-type","bcc:","to:","cc:","href"); return str_replace($bad,"",$string); } $email_message .= "First Name: ".clean_string($first_name)."n"; $email_message .= "Last Name: ".clean_string($last_name)."n"; $email_message .= "Email: ".clean_string($email_from)."n"; $email_message .= "Telephone: ".clean_string($telephone)."n"; $email_message .= "Comments: ".clean_string($comments)."n"; // create email headers $headers = 'From: '.$email_from."rn". 'Reply-To: '.$email_from."rn" . 'X-Mailer: PHP/' . phpversion(); @mail($email_to, $email_subject, $email_message, $headers); ?> < !-- include your own success html here --> Thank you for contacting us. We will be in touch with you very soon. < ? php } ? >
এবার এটিকে send_form_email.php নামে সেভ করি। এবার send_form_email.php এবং contactform.htm দুটি সার্বার এ আপ্লোড করি। এবার রান করি
http://maelstrom-media.net/contactform.htm
এখন আমি যা লিখব আমার ইমেল এড্রেস এ চলে আসবে।
হয়ে গেলো আমার ছোট্ট প্রোগ্রাম।
কিন্তু ঘটনা হচ্ছে আপ্নারা কিচ্ছুই বোঝেন নি আমি জানি। এখন আপনাদের কাজ হচ্ছেয় এই পি এইচ পি স্ক্রিপ্ট টা বার বার পড়ুন। প্রতিটা লাইন বার বার পড়ুন। কোন লাইন দিয়ে কোন কমান্ড দেয়া হইছেয় সেটা বুঝুন। যেটা বুঝবে না আমাকে জিজ্ঞেস করুন। নিজে বোঝার চেস্টা করুন। যখন বুঝে যাবেন তখন এটাকে মডিফাই করার চেষ্টা করুন।
আপনাদের সকল প্রশ্ন এবং সমস্যার উত্তর দেয়ার জন্য আমি আছি http://wdforumz.com এ। যেকোন প্রশ্ন করুন আমি উত্তর দেব।
আজকের মত এই সমস্যা টাই সল্ভ করুন। এই সমস্যা সল্ভ হয়ে গেলে নতুন সমস্যা নিয়ে হাজির হব।
বিদায়
আমি pr_nm। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 12 বছর 8 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 1 টি টিউন ও 20 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 0 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।
huu