الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال بخصوص عمل validation

بدأه smiley girl في 3 أبريل 2011 · 6 رد · 576 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

السلام عليكم ورحمة الله

أواجه مشكلة في عمل validation للقيم اللتي يدخلها اليوزر عندي في الform

انا استخدمت في البداية الجافا سكريبت ولكنها كانت مزعجة جداً وتمسح كل الحقول التي تمت كتابتها مسبقا

في الform حتى لو كانت صحيحه

سؤالي هو هل يوجد تقنية تنبه اليوزر مباشرة على الخطأ قبل ارسال الفورم بالsubmit ؟

بحيث مثلا اذا اشترطت ان يكون رقم الجوال المدخل من 10 ارقام يلزمني بوضع ال10 ارقام قبل الانتقال

الى الخانة اللتي تليها....وهكذا

ارجو ان تكون وضحت الفكرة

وشكرا لكم مقدماً

#2

up

ارجو المساعده ولكم خالص الدعوات

#3

ممكن تضعى الكود الخاص بك

GoodBye

#4

تفضل هذا هو الكود مع الجافا سكريبت

<!DOCTYPE HTML SYSTEM>
<script type ="text/javascript">
function echeck(mailvalue)
{   
var emailRegEx = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i;
     if (mailvalue.search(emailRegEx) == -1) 
     return false;
     else
     return true;
}

function checkname(fn) 
{ 
        var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzذ د ج ح خ ه ع غ ف ق ث ص  ض ط ك م ن ت ا ل ب ي س ش ظ ز و ة ى لا ر ؤ ء ئ أ لأ ى  "; 
        var allValid = 0; 

        for (i = 0;  i < fn.length;  i++){ 
                ch = fn.charAt(i); 
                for (j = 0;  j < checkOK.length;  j++){ 
                        if (ch == checkOK.charAt(j)){ 
                                        allValid +=1; 
                                        break; 
                        } 
                } 
        } 
        if(allValid == fn.length){

                return true; 
        }else{ 

                return false; 
        } 
}
function echeck(mailvalue)
{   
var emailRegEx = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i;
     if (mailvalue.search(emailRegEx) == -1) 
     return false;
     else
     return true;
}
function validate()
{
var fn=document.myform.fname.value;
if(checkname(fn)==false){
alert("الاسم خاطئ");
fn.focus();
}

		if (fn=="")
		{
			alert("من فضلك ادخل الاسم الاول");
			fn.focus();

		}
	var mn=document.myform.mname.value;
if(checkname(mn)==false){
alert("اسم الاب خاطئ");
mn.focus();
}

		if (mn=="")
		{
			alert("من فضلك ادخل اسم الاب");
			mn.focus();

		} 
		var ln=document.myform.lname.value;
if(checkname(ln)==false){
alert("اسم العائلة خاطئ");
ln.focus();
}

		if (ln=="")
		{
			alert("من فضلك ادخل العائلة");
			ln.focus();

		}		
var tel=document.myform.tel.value
var mob=document.myform.mob.value
     if(tel != "")
	 {
	if (isNaN(tel)==true)
        {
              alert("رقم الهاتف خطأ")  
                tel.focus();
	   }
         if(tel.length != 9)
              {
                  alert("رقم الهاتف يجب ان يكون 9 ارقام");
                  tel.focus();
               }
			   }
			if (mob != "")
			{
	if (isNaN(mob)==true)
        {
              alert("رقم الجوال خطأ")  
                mob.focus();
	    }

         if(mob.length !=10)
              {
                  alert("رقم الجوال يجب ان يكون 10 ارقام");
                  mob.focus();
               }
			   }
			   if(tel == "" && mob == "")
			   {
			   alert("من فضلك ادخل رقم الهاتف او رقم الجوال او كليها");
               tel.focus();               
			   mob.focus();
			   }		
var email=document.myform.email.value
	if (email=="")
        {
		alert("  من فضلك ادخل البريد الألكتروني ") 
		email.focus();
	}
       if (echeck(email)==false)
	   {
                alert("الرجاء إدخال عنوان بريد إلكتروني صحيح.");
		email.focus();
	}

var adrss=document.myform.area.value;
		if (adrss=="")
		{
			alert("من فضلك ادخل اسم الحي");
			adrss.focus();

		}  


		if (document.getElementById('test').value == "")
		{
			alert("من فضلك ادخل البلاغ ");
			Comp.focus();

		} 

}		

</script>
<html dir=rtl>
<html>
<head>

<title>
صفحة البلاغ
</title>

</head>
<body>
<form name="myform"  method = "post">

<div>

<table align="center" >
<div>
<tr><th>البيانات الشخصيه</th></tr>
<tr><td rowspan=2 >الاسم الثلاثي</td><td><h6>الاسم الاول</h6></td>
<td><h6>اسم الاب</h6></td><td><h6>العائله</h6></td></tr>
<tr><td><input name = "fname" type = "text" size = "20" maxlength = "40"></td>
<td><input name = "mname" type = "text" size = "20" maxlength = "40"></td>
<td><input name = "lname" type = "text" size = "20" maxlength = "40"></td></tr>
<tr><td>رقم الهاتف</td><td><input name = "tel" type = "text" size = "20"></td></tr>
<tr><td>رقم الجوال</td><td><input name = "mob" type = "text" size = "20" maxlength = "40"></td>
<td valign ="bottom" COLOR ="#FF0000"><h6> *اختياري رقم الهاتف او الجوال او كليهما </td></h6></tr>

<tr><td>البريد الالكتروني</td><td><input name = "email" type = "text" size = "20"></td>
</div>
<div>
<tr><th>معلومات البلاغ</th></tr>
<tr><td>الحي</td><td><input name = "area" type = "text" size = "20" maxlength = "40"></td></tr>
<tr><td>البلاغ </td><td colspan = "2" ><textarea name= "coml"  id="test" rows= "4" cols= "40"></textarea>
</div>


 </td></tr>

</table>
 <p align="center">
               <input type = "submit" value ="ارسال البلاغ"  onclick="validate()"; />
               <input type ="reset"  value = "الغاء الأمر" />
</p>
</form>
</body>
</html>
#5

من الممكن استخدام الجافا سكريبت دون حذف القيم المدخلة من قبل المستخدم وانما فقط اعطاءه تنبيه على القيم الخاطئة ..

راجع الرابط التالي :

http://bassistance.de/jquery-plugins/jquery-plugin-validation/

http://speckyboy.com/2009/12/17/10-useful-jquery-form-validation-techniques-and-tutorials-2/

http://www.webreference.com/programming/javascript/jquery/form_validation/

و جميعها تعتمد على الـ jQuery في هذه العملية .

1

محمد زاهر غيبة

مبرمج تطبيقات ويب متطورة

شركة كرييتف ويب غروب ( Creative Web Group )

مصر

00201023318723

#6

شكرا جزيلا لك استفدت كثيرا من المواقع المذكوره

ولكن عندي مشكلة في التشييك من الداتا بيس عن الايميل واليوزر نيم هل هو موجود مسبقا أو لا؟

فهل أجد عندكم مايفيدني

أسأل الله التوفيق لكم

#7

عليك هنا الاعتماد على توابع الأجاكس من جهة و من جهة أخرى على عمليات البحث ضمن قواعد البيانات من قبل المخدم ..

راجعي التالي :

51+ Best of jQuery Tutorials and Examples

AJAXIFY YOUR WEB PAGES USING JQUERY

PHP AJAX LOGIN FORM USING JQUERY

و هذه الروابط التالية تقوم بشرح كيفية التعامل مع الآجاكس باستخدام jQuery..

--------------

محمد زاهر غيبة

مبرمج تطبيقات ويب متطورة

شركة كرييتف ويب غروب ( Creative Web Group )

دمشق سوريا

00963944728321

معرف توتر : @zaherg

تم تعديل هذه المشاركة بواسطة linux juggler في 9 أبريل 2011 في 12:41

محمد زاهر غيبة

مبرمج تطبيقات ويب متطورة

شركة كرييتف ويب غروب ( Creative Web Group )

مصر

00201023318723

مواضيع مشابهة