PDA

View Full Version : الگوی متنی برای ورودی هایی که فقط باید حروف هم فارسی و هم انگلیسی باشد و الگوی متنی برای آدرس به طور



student91
سه شنبه 29 فروردین 1391, 13:57 عصر
سلام.
الگوی متنی برای ورودی هایی که فقط باید حروف هم فارسی و هم انگلیسی باشد و الگوی متنی برای آدرس به طوریکه کاراکترهای خاص مثل & را وارد نکند رو نتونستم بدست بیارم.لطفا راهنماییم کنید.ممنون

eshpilen
سه شنبه 29 فروردین 1391, 14:32 عصر
الگوی متنی برای ورودی هایی که فقط باید حروف هم فارسی و هم انگلیسی باشد
یعنی هردوی فارسی و انگلیسی همزمان باید داشته باشه؟

student91
سه شنبه 29 فروردین 1391, 23:24 عصر
سلام بله!یعنی فرد نامش رو هم به فارسی بتونه وارد کنه و هم به انگلیسی!البته الگو برای ورودی به صورت فقط فارسی هم لازم دارم!ممنون میشم راهنماییم کنید!

eshpilen
سه شنبه 29 فروردین 1391, 23:47 عصر
<?php

header('Content-Type: text/html; charset=utf-8');
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: private, no-store, no-cache, must-revalidate, post-check=0, pre-check=0, max-age=0");
header('Pragma: private');
header("Pragma: no-cache");

error_reporting(E_ALL);
ini_set('display_errors', '1');

$tmp='[\x{067E}\x{0622}\x{0627}\x{0628}\x{062A}-\x{063A}\x{0641}-\x{064A}\x{0698}\x{06A9}\x{06AF}\x{06C1}\x{06CC}]|[a-zA-Z0-9]';

$re1="/^($tmp)($tmp|\\s($tmp))*$/u";

$tmp='[\x{067E}\x{0622}\x{0627}\x{0628}\x{062A}-\x{063A}\x{0641}-\x{064A}\x{0698}\x{06A9}\x{06AF}\x{06C1}\x{06CC}]|[0-9]';

$re2="/^($tmp)($tmp|\\s($tmp))*$/u";

if(isset($_POST['s1'])) {
if(preg_match($re1, $_POST['i'])) echo '<span style="color: green; font-weight: bold">قابل قبول</span>';
else echo '<span style="color: red; font-weight: bold">غیرقابل قبول</span>';
}
else if(isset($_POST['s2'])) {
if(preg_match($re2, $_POST['i'])) echo '<span style="color: green; font-weight: bold">قابل قبول</span>';
else echo '<span style="color: red; font-weight: bold">غیرقابل قبول</span>';
}

?>

<form action="" method="post">
<input type="text" name="i" size="50" style="text-align: center">
<input type="submit" name="s1" value="فارسی و انگلیسی">
<input type="submit" name="s2" value="فقط فارسی">
</form>



رگولار اکسپرشن اول: حروف فارسی + حروف انگلیسی + اعداد + فاصله تکی و فقط بین حروف (فاصله در ابتدا یا انتها مجاز نیست).
رگولار اکسپرشن دوم: حروف فارسی + اعداد + فاصله تکی و فقط بین حروف.

علامتهای خاص در هیچکدام اجازه داده نشده. فقط و فقط همون مواردی که ذکر شدن قابل قبول هست