در این مطلب جدید در سال 1405 و سال 2026 ، درست نوشته شدن یا اعتبار سنجی بخش های اجباری در فرمها و اعتبارسنجی ایمیل و URL در PHP و آموزش اعتبارسنجی ایمیل و URL در PHP و اعتبارسنجی فیلد ایمیل در پی اچ پی و چطوری یک آدرس ایمیل رو اعتبارسنجی کنیم؟ و اعتبارسنجی فیلدهای نام name و ایمیل email و آدرس url در php در نم نمک.
آموزش معتبر بودن نام در PHP و اعتبارسنجی ایمیل و URL در PHP
در این درس میخواهیم از درست نوشته شدن یا اعتبار سنجی بخش های اجباری در فرمها مطمئن شویم.![]()

کدی که در زیر نوشته ایم ساده ترین روش برای بررسی اعتبار نام نوشته شده از طرف کاربر است. این کد بررسی میکند که نام از حروف و فضای خالی استفاده شده باشد. در صورتی که بخش نام این ویژگی را دارا نبود خطا به کاربر نشان دهد. در این کد نویسی از تابع ()preg_match نیز استفاده شده است. این تابع رشته های نوشته شده در الگو را بررسی میکند و اگر از الگوی مورد نظر پیروی میکرد آن را درست اعلام میکند و عدد 1 را میفرستد ، در غیر این صورت غلط بودن آن را برای نمایش خطا به بخش دستور بعدی با عدد 0 میفرستند. این دستور درون علامت “/ /” و ویژگی های مورد بررسی در [ ] قرار میگیرند. اگر به دنبال بررسی یک رشته خاص باشد در انتهای تابع حرف i را قرار میدهند. اگر از حرف b قبل و بعد آن کلمه یا رشته استفاده شود تنها همان کلمه یا رشته را جستجو میکند و کلمات مشابه را در نظر نخواهد گرفت مانند : bweb/b/ تنها web را جستجو میکند دیگر کلماتی مانند webmaster برایش اهمیت ندارد.
$name=test_input($_POST["name"]);
if(!preg_match("/^[a-zA-Z ]*$/"،$name))
{
$nameErr="Only letters and white space allowed";
}
معتبر بودن E-mail در PHP
دستور زیر معتبر بودن آدرس ایمیل را بررسی میکند اگر درست نبود پیغام خطا را به کاربر نشان میدهد. نحوه نوشتن تابع ()preg_match به صورت نوشتن یک ایمیل است. ابتدا بخش اول ایمیل و کاراکتر هایی که میتواند شامل این بخش شود را بیان کرده سپس با گذاشتن + و @ ویژگی کاراکترهایی که در این بخش از آدرس ایمیل قرار میگیرند و با + و . کاراکترهایی که ویژگی هایی مثل com ، org و… را بیان کرده است. هرکدام از این حروف در این تابع بیان کننده یک ویژگی خاص است.
$email=test_input($_POST["email"]);
if(!preg_match("/([w-]+@[w-]+.[w-]+)/"،$email))
{
$emailErr="Invalid email format";
}
معتبر بودن URL در PHP
دستور زیر آدرس سایتی را که در فرم مینوسید را بررسی میکند در صورت درست بودن و معتبر بودن URL آن را ذخیره نماید در غیر این صورت پیغام خطا به کاربر نشان میدهد. در این بخش هم تابع()preg_match بخش های مختلف یک URL را بررسی میکند و در صورت درست بودن آن بخش به کاربر اجازه ارسال اطلاعات را میدهد.
$website=test_input($_POST["website"]);
if(!preg_match("/(? : (? : https?|ftp) : //|www.)[-a-z0-9+&@#/%?=~_|! : ،.;]*[-a-z0-9+&@#/%=~_|]/i"،$website))
{
$websiteErr="Invalid URL";
}

حال میخواهیم اعتبارسنجی ایمیل و URL در PHP را در کنار هم مشاهده کنیم و آن ها را در کد نویسی فرم قبل اضافه نماییم. این بخش را در بین کد های else if قرار میدهیم.
<!DOCTYPEHTML>
<html>
<head>
<style>
.error {color : #FF0000;}
</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("/(? : (? : 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"]))
{$genderErr="Gender is required";}
else
{$gender=test_input($_POST["gender"]);}
}
functiontest_input($data)
{
$data=trim($data);
$data=stripslashes($data);
$data=htmlspecialchars($data);
return$data;
}
?>
<h2>PHP Form Validation Example</h2>
<p><span class="error">*required field.</span></p>
<form method="post"action="<?phpechohtmlspecialchars($_SERVER["PHP_SELF"]);?>">
Name : <input type="text"name="name">
<span class="error">*<?phpecho$nameErr;?></span>
<br><br>
E-mail : <input type="text"name="email">
<span class="error">*<?phpecho$emailErr;?></span>
<br><br>
Website : <input type="text"name="website">
<span class="error"><?phpecho$websiteErr;?></span>
<br><br>
Comment : <textarea name="comment"rows="5"cols="40"></textarea>
<br><br>
Gender :
<input type="radio"name="gender"value="female">Female
<input type="radio"name="gender"value="male">Male
<span class="error">*<?phpecho$genderErr;?></span>
<br><br>
<input type="submit"name="submit"value="Submit">
</form>
<?php
echo"<h2>Your Input : </h2>";
echo$name;
echo"<br>";
echo$email;
echo"<br>";
echo$website;
echo"<br>";
echo$comment;
echo"<br>";
echo$gender;
?>
</body>
</html>
![چهره های متولد و درگذشته 15 خرداد [عکس و بیوگرافی]](/media/k2/items/cache/e40c7cc0570d68438767e8d118402df7_XL.jpg)


![بیوگرافی بازیگران سریال صفا با خانواده [داستان و نقش]](/images/up/231/506.jpg#joomlaImage://local-images/up/231/506.jpg?width=290&height=290)

![بیوگرافی بازیگران سریال گل سنگ [داستان و نقش]](/images/up/230/11.jpg#joomlaImage://local-images/up/230/11.jpg?width=290&height=290)


![بیوگرافی بازیگران سریال گذرگاه [داستان و نقش]](/images/up/230/8.jpg#joomlaImage://local-images/up/230/8.jpg?width=290&height=290)





