السلام عليكم ورحمة الله وبركاته
الكثير من مبرمجي المواقع يتسخدمون طريقة التحقق من المدخل بالجافا سكربت ولكن طريقة كتابة الكود قد تكون صعبه للمبتداين او تضيع وقت المتقدمين وقد اتيت لكم بموقع تضع له كود الفورم اللي تريد عمل تحقق على مدخلاته وبسهوله شديده يخرج لك الكود مرفق معه كود التحقق جاهز للدخول للموقع من هنا
JavaScript Form Field Verification Tool (To Check Data Entered in Forms) - FREE!
ضع كود الفورم بالمربع الظاهر امامك بشرط ان يكون بين وسمي html ,body
مثال
كود PHP:
<html>
<body>
<head>
</head>
<form action="test.php" method="post">
username<input type="text" name="username">
<br>
<input type="submit" value="Save">
</form>
</body>
</html>
ثم اضغط continue
الان سيظهر لك الحقول التي يمكن التاكد من مدخلاتها تختار الحقل ثم تختار من اسفل نوع التحقق من الحقل مثلا مع حقل username بالمثال سنختار
The field must be filled in with at least 1 but no more 10 than characters
بعد ان تختار نوع التحقق تضغط على add لعمل كود الجافا السكربت الخاص بالحقل
كما يمكن اضافة اكثر من نوع تحقق للحقل الواحد
بعد الانتهاء اضغط continue ليخرج لك الكود مدمج معه كود التحقق
كود PHP:
<html>
<body>
<head>
<title>Test JavaScript Verification</title>
<!-- formmailx-BEGIN - Do not modify these lines directly. -->
<!-- To change your form validation, visit http://www.formmailx.com. -->
<script LANGUAGE="JavaScript">
<!--
var b = 0 ;
var i = 0 ;
var errmsg = "" ;
var punct = "" ;
var min = 0 ;
var max = 0 ;
function formmailx_email(field) {
if (b && (field.value.length == 0)) return true ;
if (! emailCheck(field.value))
{
field.focus();
if (field.type == "text") field.select();
return false ;
}
return true ;
}
function formmailx_filledin(field) {
if (b && (field.value.length == 0)) return true;
if (field.value.length < min) {
alert(errmsg);
field.focus();
if (field.type == "text") field.select();
return false ;
}
if ((max > 0) && (field.value.length > max)) {
alert(errmsg);
field.focus();
if (field.type == "text") field.select();
return false ;
}
return true ;
}
function formmailx_number(field) {
if (b && (field.value.length == 0)) return true ; ;
if (i)
var valid = "0123456789"
else
var valid = ".,0123456789"
var pass = 1;
var temp;
for (var i=0; i<field.value.length; i++) {
temp = "" + field.value.substring(i, i+1);
if (valid.indexOf(temp) == "-1") pass = 0;
}
if (!pass) {
alert(errmsg);
field.focus();
if (field.type == "text") field.select();
return false;
}
if (field.value < min) {
alert(errmsg);
field.focus();
if (field.type == "text") field.select();
return false;
}
if ((max > 0) && (field.value > max)) {
alert(errmsg);
field.focus();
if (field.type == "text") field.select();
return false;
}
return true ;
}
function formmailx_numseq(field) {
if (b && (field.value.length == 0)) return true ;
var valid = punct + "0123456789"
var pass = 1;
var digits = 0
var temp;
for (var i=0; i<field.value.length; i++) {
temp = "" + field.value.substring(i, i+1);
if (valid.indexOf(temp) == "-1") pass = 0;
if (valid.indexOf(temp) > (punct.length-1) ) digits++ ;
}
if (!pass) {
alert(errmsg);
field.focus();
if (field.type == "text") field.select();
return false ; ;
}
if (digits < min) {
alert(errmsg);
field.focus();
if (field.type == "text") field.select();
return false;
}
if ((max > 0) && (digits > max)) {
alert(errmsg);
field.focus();
if (field.type == "text") field.select();
return false;
}
return true ;
}
function emailCheck (emailStr) {
var checkTLD=1;
var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum|ws)$/;
var emailPat=/^(.+)@(.+)$/;
var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
var validChars="\[^\\s" + specialChars + "\]";
var quotedUser="(\"[^\"]*\")";
var atom=validChars + '+';
var word="(" + atom + "|" + quotedUser + ")";
var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
var matchArray=emailStr.match(emailPat);
if (matchArray==null) {
alert(errmsg);
return false;
}
var user=matchArray[1];
var domain=matchArray[2];
for (i=0; i<user.length; i++) {
if (user.charCodeAt(i)>127) {
alert(errmsg);
return false;
}
}
for (i=0; i<domain.length; i++) {
if (domain.charCodeAt(i)>127) {
alert(errmsg);
return false;
}
}
if (user.match(userPat)==null) {
alert(errmsg);
return false;
}
var atomPat=new RegExp("^" + atom + "$");
var domArr=domain.split(".");
var len=domArr.length;
for (i=0;i<len;i++) {
if (domArr[i].search(atomPat)==-1) {
alert(errmsg);
return false;
}
}
if (checkTLD && domArr[domArr.length-1].length!=2 &&
domArr[domArr.length-1].search(knownDomsPat)==-1) {
alert(errmsg);
return false;
}
if (len<2) {
alert(errmsg);
return false;
}
return true;
}
function formmailx_sub()
{
/*
//FBDATA:username^0^1^10^0^Field "username" must be filled in.:;
*/
b=0;
errmsg="Field \"username\" must be filled in.";
min=1;
max=10;
if (! formmailx_filledin(document.form1.username) ) return false ;
}
-->
</script>
<!-- formmailx-END -->
</head>
<form action="test.php" method="post" onsubmit=" return formmailx_sub()" name="form1" >
username<input type="text" name="username">
<br>
<input type="submit" value="Save">
<p><font size=1><a href="http://www.formmailx.com" target="_blank">Web Form Validation by FormMail Xtreme</a></font></p></form>
</body>
</html>
اذا كانت المدخلات كثيره يمكنك وضع الكود بملف منفصل باسم مثلا verify.js
ثم تعمل له جلب عن طريق وضع الكود التالي بعد وسم الhead
<head>
<script language="JavaScript" src="verify.js" type="text/javascript"></script>
</head>
ملحوظه:الطريقه يستخدمها المبرمج لكي يتحقق المستخدم من مدخلاته بدلا من اعادة ملئ البيانات ولكنها لا تفيد ابدا كتحقق من الدخلات للمبرمج لان يمكن تخطيها اذا كانت خاصية الجافا معطله بالمتصفح
الموضوع من كتابتي فاذا استفدت منه فارجو الا تبخل علي بالدعاء لي بالمغفره واصلاح الحال