سورس برنامه نویسی ، آموزش ، قالب وردپرس ، اسکریپت ، گرافیک ، آموزش کاربردی، دانلود رایگان ، قالب

تبليغات شما در داده باران
تبلیغات در داده باران

آموزش PHP (پی اچ پی) – قسمت بیست و دوم

آموزش PHP (پی اچ پی) – قسمت بیست و دومReviewed by داده باران on Dec 7Rating:

در ادامه مطلب همراه ما باشید

آموزش  PHP – اعتبارسنجی ایمیل

در این آموزش، نحوه ی اعتبارسنجی فیلدهای “نام”، “ایمیل” و “وب سایت” نشان داده خواهد شد.

اعتبارسنجی فیلد “نام” در PHP

کد زیر، یک روش ساده برای چک کردن اینکه آیا فیلد “نام” معتبر است یا نه را نشان می دهد. (فیلد نام فقط شامل حروف و خط فاصله است)

اگر فیلد “نام” معتبر نباشد، در متغییر nameErr$ یک متن مناسب، تنظیم می شود:

$name = test_input($_POST[“name”]);
if (!preg_match(“/^[a-zA-Z ]*$/”,$name))
{
$nameErr = “فیلد نام فقط شامل حروف و خط فاصله است”;
}

 

تابع ()preg_match
با استفاده از تابع ()preg_match، می توانید یک الگوی خاص را در یک رشته جستجو کنید. اگر الگوی مورد نظر در رشته وجود داشت مقدار true و اگر وجود نداشت مقدار false را برمی گرداند.

اعتبارسنجی فیلد “ایمیل” در PHP

روش اول: استفاده از تابع ()preg_match

کد زیر، یک روش ساده برای چک کردن اینکه آیا فیلد “ایمیل” معتبر است یا نه را نشان می دهد. (باید شامل فرمت صحیح ایمیل باشد، همراه با علامت @ و .)

اگر فیلد “ایمیل” معتبر نباشد، در متغییر emailErr$ یک متن مناسب، تنظیم می شود:

$email = test_input($_POST[“email”]);
if (!preg_match(“/([\w\-]+\@[\w\-]+\.[\w\-]+)/”,$email))
{
$emailErr = “فرمت فیلد ایمیل صحیح نیست”;
}

روش دوم: استفاده از تابع ()filter_var

یکی دیگر از روش های چک کردن اعتبار ایمیل، استفاده از تابع ()filter_var در PHP است.(بزودی آموزش ()filter_var بروی سایت قرار میگیرد.

$email = test_input($_POST[“email”]);
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$emailErr =”فرمت فیلد ایمیل صحیح نیست”;
}

در این آموزش، از روش اول یعنی تابع ()preg_match استفاده شده است.

حتما بخوانید  دانلود آموزش جامع نرم افزار illustrator Cs5 – قسمت ۲۵

اعتبارسنجی فیلد “وب سایت” در PHP

کد زیر، یک روش ساده برای چک کردن اینکه آیا فیلد “وب سایت” معتبر است یا نه را نشان می دهد. (باید شامل فرمت صحیح URL باشد، همچنین عبارت منظم زیر اجازه می دهد که در URL علامت dash “-” نیز استفاده شود)

اگر فیلد “وب سایت” معتبر نباشد، در متغییر websiteErr$ یک متن مناسب، تنظیم می شود:

$website = test_input($_POST[“website”]);
if (!preg_match(“/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i”,$website))
{
$websiteErr = “فرمت فیلد وب سایت صحیح نیست”;
}

اعتبارسنجی فیلدهای “نام”، “ایمیل” و “وب سایت” در PHP

تا اینجا، اسکریپت مان شبیه زیر شده است:

مثال

<!DOCTYPE HTML>
<html>
<head>
<style>
.error {color: #FF0000;}
span{min-width: 200px;float: right;}
</style>
</head>
<body>

<?php
// define variables and set to empty values
$nameErr = $emailErr = $genderErr = $websiteErr = “”;
$name = $email = $gender = $comment = $website = “”;

if ($_SERVER[“REQUEST_METHOD”] == “POST”)
{
if (empty($_POST[“name”]))
{$nameErr = “Name is required”;}
else
{
$name = test_input($_POST[“name”]);
// check if name only contains letters and whitespace
if (!preg_match(“/^[a-zA-Z ]*$/”,$name))
{
$nameErr = “Only letters and white space allowed”;
}
}

if (empty($_POST[“email”]))
{$emailErr = “Email is required”;}
else
{
$email = test_input($_POST[“email”]);
// check if e-mail address syntax is valid
if (!preg_match(“/([\w\-]+\@[\w\-]+\.[\w\-]+)/”,$email))
{
$emailErr = “Invalid email format”;
}
}

if (empty($_POST[“website”]))
{$website = “”;}
else
{
$website = test_input($_POST[“website”]);
// check if URL address syntax is valid (this regular expression also allows dashes in the URL)
if (!preg_match(“/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i”,$website))
{
$websiteErr = “Invalid URL”;
}
}

if (empty($_POST[“comment”]))
{$comment = “”;}
else
{$comment = test_input($_POST[“comment”]);}

if (empty($_POST[“gender”]) || $_GET[“gender”]==”undefined”)
{$genderErr = “Gender is required”;}
else
{$gender = test_input($_POST[“gender”]);}
}

function test_input($data)
{
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<h2>مثال اعتبارسنجی فرم ها در PHP</h2>
<form method=”post” action=”<?php echo htmlspecialchars($_SERVER[“PHP_SELF”]);?>”>
<div>
<span>نام:</span><input type=”text” name=”name”>
<span class=”error”>*</span>
</div>
<div>
<span>ایمیل:</span><input type=”text” name=”email”>
<span class=”error”>*</span>
</div>
<div>
<span>وب سایت:</span><input type=”text” name=”website”>
<span class=”error”></span>
</div>
<div>
<span>توضیحات:</span><textarea name=”comment” rows=”5″ cols=”40″></textarea>
<span class=”error”>*</span>
</div>
<div>
<span>جنسیت:</span>
<input type=”radio” name=”gender” value=”female”>زن
<input type=”radio” name=”gender” value=”male”>مرد
</div>
</div><input type=”submit” name=”submit” value=”ارسال اطلاعات”></div>
</form>

<?php
if ($nameErr!=”” || $emailErr!=”” || $genderErr!=”” || $websiteErr!=””)
echo “<span style=’color:red’ >
$nameErr <br /> $emailErr <br /> $genderErr <br /> $websiteErr
</span>”;
else
{
echo “<br /><h2>خروجی کدتان</h2>”;
echo “نام :$name”;
echo “<br />”;
echo “ایمیل: $email”;
echo “<br />”;
echo “وب سایت: $website”;
echo “<br />”;
echo “توضیحات: $comment”;
echo “<br />”;
echo “جنسیت: $gender”;
?>
}
</body>
</html>

 

حتما بخوانید  نمایش تعداد دانلود فایل ها در وردپرس

خروجی کد بالا:

 

مثال اعتبارسنجی فرم ها در PHP

نام:
*
ایمیل:
*
وب سایت:
توضیحات:
*
جنسیت:
زن
مرد

در آموزش بعدی نحوه ی جلوگیری از خالی شدن فیلدهای فرم، زمانی که کاربر روی دکمه submit کلیک می کند را نشان خواهیم داد.

لينك كوتاه اين مطلب : http://www.dadebaran.ir/?p=1176

رمز فايل : DADEBARAN.IR




تبلیغات در داده باران
ارسال دیدگاه

قبل از نوشتن دیدگاه به نکات زیر توجه کنید:
    » نظراتی که با تایپ فارسی نباشند تایید نخواهند شد
    » نظرات تبلیغاتی اسپم محسوب میشوند و IP شخص مسدود خواهد شد.

پاسخ دهید

نکته: نظر شما در انتظار بررسی است و پس از تایید مدیریت در سایت نمایش داده میشود..