داڕشتنی فۆرم لە خۆیدا پرۆسەیەکی ئاسانە و لە زۆر بوارێکدا کارمان زۆر بۆ ئاسان دەکەنەوە، لەگەڵ HTML5 داڕشتنی فۆرم لە جاران ئاسانتر کراوەتەوە لەگەڵ شێوازی پێناسکردنی خانەکانی فۆرم باشتر کراوە.
ئەم بابەتە بە داڕشتنی فۆرمێکی سادە دەست پێدەکەم کە چەند خانەیەک لە خۆ دەگرێت و دواتر بە بەکاربردنی تایبەتمەندی mail لە PHP زانیارییە نووسراوەکانی نێو ئەو فۆرمە بەڕێ دەکرێت بۆ ئیمەیلێک.
بێگومان داڕشتنی فۆرمەکە بە هاوکاری HTML5 دەبێت و سوود لە هەموو جۆرە تایبەتمەندییەکانی زمانەکە دەبینین کە هاوکاریمان بکات بۆ باشتر داڕشتنی فۆرمەکەمان.
فۆرمی ناوبراو لە چەند خانەی خوارەوە پێکدێت،
١، خانەیەک بۆ وەرگرتنی ناوی بەکارهێنەر، جۆری خانەکە دەقی ئاسایی دەبێت، text.
٢، خانەیەک بۆ وەرگرتنی ئیمەیل، جۆری email دەبێت و هەروەها سوود لە سەلماندنی نێوخۆیی HTML5 دەبینین بۆ سەلماندنی ئەوەی کە بەکارهێنەر ئیمەیلی درووست دەنووسێت.
٣، خانەیەک کە پەیامی بەکارهێنەر لە خۆ بگرێت، جۆری textarea و هەروەها نووسینی پەیامێک لە نێو ئەو خانە مەرج دەکەین، کە ئەگەر بەتاڵ بوو نەتوانرێت فۆرمەکە بەڕی بکرێت.
تاگەکانی تایبەت بە خانەی ناو،
<input type="text" name="naw">
جگە لە دەستنیشان کردنی جۆری خانەکە ناوێکمان نووسیووە کە پێویستە بۆ هەنگاوەکانی بەشی PHP بۆ وەرگرتنی زانیارییەکانە نووسراوەکانی نێو ئەو خانە.
خانەی ئیمەیل بە شێوازی خوارەوە دەنووسین،
<input type="email" name="email" title="تکایە ئیمەیلێک بنووسە، بۆ نموونە email@email.com">
بۆ خانەی ئیمەیل جۆری خانەکەمان وەک email دەستنیشان کردووە کە هاوکاری دەکات لە سەلماندنی ئەوەی بەکارهێنەر ئیمەیلی درووست بنووسێت، گرینگە کە ئەوە لەبەرچاو بگرێت ئەو تایبەتمەندییە کاتێک کاری خۆی جێبەجێ
دەکات ئەگەر وێبگەڕ پاڵپشتیی لێ بکات و نابێت تەنیا پشت بە ئەو سەلماندنە ببەسترێت. لە بەشی PHP مەرجێکی دیکە دەنووسین کە دڵنیامان دەکاتەوە لەوەی کە ئیمەیل بە شێوازی درووست نووسراوە.
هەروەها title بەکاربراوە بۆ پیشاندنی پەیامێک کاتێک بەکارهێنەر ئیمەیلی خۆی بە شێوازی درووست نەنووسێت. ئەگەر ئەو تاگە ئاماژە پێنەدرێت، وێبگەڕ پەیامی بنەڕەتیی پیشان دەدات بە ئەو زمانەی کە وێبگەڕی بەکارهێنەر بەکاری
دەبات.
تاگی placeholder شێوازی نووسینی ئیمەیل لە نێو خانەکە بە ڕەنگێکی کاڵ پیشان دەدات بۆ ئەوەی بەکارهێنەر ڕێنمایی بکرێت کە ئیمەیلەکەی بە شێوازی درووست بنووسێت.
خانەی پەیام کە لە جۆری textarea دەبێت،
<textarea name="peyam" required title="تکایە پەیامێک بنووسە" placeholder="تکایە دەقی پەیامەکەت لە ئێرە بنووسە"></textarea>
خانەی پەیام بە تاگی required پێناس کراوە کە بەکارهێنەر ناچار دەکات پەیامێک بنووسێت پێش ناردنی فۆرمەکە، ئەگەر بەکارهێنەر نەیەوێت پەیام بنووسێت پێویست ناکات فۆرمەکە بنێردرێت.
ئەنجامی کۆدەکانی سەرەوە لەگەڵ تاگی form و دووگمەی ناردن،
<form action="" name="peywendi">
<div>
ناو: <input type="text" name="naw">
</div>
<div>
ئیمەیل: <input type="email" name="email" title="تکایە ئیمەیلێک بنووسە، بۆ نموونە email@email.com" placeholder="email@email.com">
</div>
<div>
پەیام: <textarea name="peyam" required title="تکایە پەیامێک بنووسە" placeholder="تکایە دەقی پەیامەکەت لە ئێرە بنووسە"></textarea>
</div>
<div>
<button name="submit" type="submit">ناردنی پەیام</button>
</div>
</form>
تا ئەم هەنگاوە فۆرمێکی سادەمان لەسەر بنەماکانی HTML5 داڕشتووە بەبێ جوانکاری و کۆدی دیکە.
کۆدەکانی PHP لە سەرەوەی فۆرمەکە دەنووسین، هەروەها هەوڵ دەدەین بە بەکاربردنی تواناکانی PHP کاری بەکارهێنەر لە پڕکردنەوەی فۆرمەکە ئاسان بکەینەوە، بەداوامبە لە خوێندنەوە لە هەنگاوەکانی داهاتوودا ڕوونتر دەبێتەوە.
یەکەم هەنگاوی بەشی PHP چێکردنی ئەوە دەبێت کە ئایا کرتە لە دووگمەی ناردنی فۆرمەکە کراوە پێش ئەوەی هەنگاوەکانی داهاتوو جێبەجێ بکرێت؟ بۆ ئەو مەبەستەش کرداری isset ی PHP بەکار دەبەین.
if(isset($_POST['submit'])){
ئەگەر کرتە لە دووگمەی ناردن کرابێت، هەنگاوەکانی خوارەوە جێبەجێ دەکرێن بەپێی ڕیزبەندییان
}
کۆدەکانی بەشی PHP بە تەواوی لە خوارەوەی ئەم دێڕەیە لەگەڵ ڕوونکردنەوە بۆ هەر فرمان/دێڕێک کە کارێکی تایبەت جێبەجێ دەکات.
<?php
// ئەگەر دووگمەی ناردنی پەیام کرتە کرابێت ئەوا بەردەوام دەبێت و هەنگاوەکانی داهاتوو جێبەجێ دەکات
if(isset($_POST['submit'])){
// بۆ کار ئاسانکردنەوە سێ بگۆڕ درووست دەکەین بۆ نرخی فۆرمەکان
$naw = $_POST['naw'];
$email = $_POST['email'];
$peyam = $_POST['peyam'];
// ئەگەر ناو نەنووسراوبێت لە ئیمەیلەکەدا ئاماژە دەکەین بە ئەوەی کە ناو نەنووسراوە
if(empty($naw)){
$naw = 'ناوی نەنووسیووە';
}
// ئەگەر خانەی ئیمەیل نووسراوەی لە خۆ گرتبێت، چێک دەکرێت بۆ دڵنیابوون لەوەی کە بە شێوازی درووست نووسراوە
if(!empty($email)){
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo 'تکایە ئیمەیلەکەت بە شێوازی درووست بنووسە';
}
}
// ئەگەر ئیمەیل نەنووسرابێت، لە ئیمەیلەکەدا ئاماژە دەکەین بە ئەوەی کە ئیمەیل نەنووسراوە
else{
$email = 'ئیمەیلی نەنووسیووە';
}
// ئەگەر خانەی پەیام بەتاڵ بێت، پەیامی خوارەوە پیشان دەدرێت
if(empty($peyam)){
echo 'ناتوانیت خانەی پەیام بە بەتاڵی بنێریت، تکایە شتێک بنووسە و دووبارە هەوڵ بدەوە';
}
// لە کۆتاییدا پاش دڵنیابوون لەوەی کە ناو و ئیمەیل و پەیام نرخییان هەیە، فۆرمەکە بەڕێ دەکرێت
if($naw) if($email) if($peyam){
// ئەو ئیمەیلەی کە پەیامەکەی بۆ بچێت
$bo = "email@domain.com";
$serderr = 'پەیوەندی لە ماڵپەڕەوە';
$peyam = "پەیام لە لایەن: ".$naw."\nئیمەیل: ".$email."\nدەقی پەیام: ".$peyam;
$from = $email;
$headers = 'From: '.$from."\r\n" .
'Reply-To: '.$email. "\r\n";
mail($bo,$serderr,$peyam,$headers);
echo'سووپاس، پەیامەکەت بە سەرکەوتوویی بەڕێ کرا';
}
}
// ئەگەر دووگمە کرتە نەکرابوو، هیچ ڕوونادات
?>
لە کۆتاییدا پەڕەی پەیوەندی بە هەردوو بەشی HTML و PHP ـەوە بریتی دەبێت لە کۆدەکانی خوارەوە کە لە نێو پەڕگەیەک بە پاشگی php بۆ نموونە form.php پاشەکەوت دەکرێت.
<!doctype html>
<html lang="ckb" dir="rtl">
<head>
<meta charset="UTF-8">
<title>فۆرم</title>
</head>
<body>
<?php
// ئەگەر دووگمەی ناردنی پەیام کرتە کرابێت ئەوا بەردەوام دەبێت و هەنگاوەکانی داهاتوو جێبەجێ دەکات
if(isset($_POST['submit'])){
// بۆ کار ئاسانکردنەوە سێ بگۆڕ درووست دەکەین بۆ نرخی فۆرمەکان
$naw = $_POST['naw'];
$email = $_POST['email'];
$peyam = $_POST['peyam'];
// ئەگەر ناو نەنووسراوبێت لە ئیمەیلەکەدا ئاماژە دەکەین بە ئەوەی کە ناو نەنووسراوە
if(empty($naw)){
$naw = 'ناوی نەنووسیووە';
}
// ئەگەر خانەی ئیمەیل نووسراوەی لە خۆ گرتبێت، چێک دەکرێت بۆ دڵنیابوون لەوەی کە بە شێوازی درووست نووسراوە
if(!empty($email)){
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo 'تکایە ئیمەیلەکەت بە شێوازی درووست بنووسە';
}
}
// ئەگەر ئیمەیل نەنووسرابێت، لە ئیمەیلەکەدا ئاماژە دەکەین بە ئەوەی کە ئیمەیل نەنووسراوە
else{
$email = 'ئیمەیلی نەنووسیووە';
}
// ئەگەر خانەی پەیام بەتاڵ بێت، پەیامی خوارەوە پیشان دەدرێت
if(empty($peyam)){
echo 'ناتوانیت خانەی پەیام بە بەتاڵی بنێریت، تکایە شتێک بنووسە و دووبارە هەوڵ بدەوە';
}
// لە کۆتاییدا پاش دڵنیابوون لەوەی کە ناو و ئیمەیل و پەیام نرخییان هەیە، فۆرمەکە بەڕێ دەکرێت
if($naw) if($email) if($peyam){
// ئەو ئیمەیلەی کە پەیامەکەی بۆ بچێت
$bo = "email@email.com";
$serderr = 'پەیوەندی لە ماڵپەڕەوە';
$peyam = "پەیام لە لایەن: ".$naw."\nئیمەیل: ".$email."\nدەقی پەیام: ".$peyam;
$from = $email;
$headers = 'From: '.$from."\r\n" .
'Reply-To: '.$email. "\r\n";
mail($bo,$serderr,$peyam,$headers);
echo'سووپاس، پەیامەکەت بە سەرکەوتوویی بەڕێ کرا';
}
}
// ئەگەر دووگمە کرتە نەکرابوو، هیچ ڕوونادات
?>
<form action="" name="peywendi" method="post">
<div>
ناو: <input type="text" name="naw">
</div>
<div>
ئیمەیل: <input type="email" name="email" title="تکایە ئیمەیلێک بنووسە، بۆ نموونە email@email.com" placeholder="email@email.com">
</div>
<div>
پەیام: <textarea name="peyam" required title="تکایە پەیامێک بنووسە" placeholder="تکایە دەقی پەیامەکەت لە ئێرە بنووسە"></textarea>
</div>
<div>
<button name="submit" type="submit">ناردنی پەیام</button>
</div>
</form>
</body>
</html>