النتائج 1 إلى 14 من 14

الموضوع: كيف امنع تكرار البيانات الكود في الداخل..

  1. #1
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2003
    المشاركات
    595

    كيف امنع تكرار البيانات الكود في الداخل..



    السلام عليكم
    إخواني الكرام لدي فورم تسجيل العملاء و كل عميل يقوم بالتسجيل يجب ان ان يسجل معه 3 عملاء آخرين
    ويجب ان تكون بياناتهم تختلف اقصد لايمكن يسجل رقم جوال او ايميل مرتين في اي حقل ..
    وهذا كود الفورم :
    كود HTML:
    <form method="POST" action="send.php">
    	<p align="center"><b><span lang="ar-sa">سجل نفسك أولا</span></b></p>
    	<p><span lang="ar-sa">الاسم*:<input type="text" name="name" size="20"></span></p>
    	<p><span lang="ar-sa">الجوال*:<input type="text" name="mobile" size="20"></span></p>
    	<p><span lang="ar-sa">الايميل*:<input type="text" name="email" size="20"></span></p>
    	<p align="center"><b><span lang="ar-sa">زميلك1 </span></b></p>
    	<p><span lang="ar-sa">الاسم*:<input type="text" name="name0" size="20"></span></p>
    	<p><span lang="ar-sa">الجوال*:<input type="text" name="mobile0" size="20"></span></p>
    	<p><span lang="ar-sa">الايميل*:<input type="text" name="email0" size="20"></span></p>
    	<p align="right">&nbsp;</p>
    	<p align="center"><b><span lang="ar-sa">زميلك</span></b><span lang="ar-sa">
    	<b>2</b></span></p>
    	<p><span lang="ar-sa">الاسم*:<input type="text" name="name1" size="20"></span></p>
    	<p><span lang="ar-sa">الجوال*:<input type="text" name="mobile1" size="20"></span></p>
    	<p><span lang="ar-sa">الايميل*:<input type="text" name="email1" size="20"></span></p>
    	<p align="center">&nbsp;</p>
    	<p align="center"><b><span lang="ar-sa">زميلك </span></b><span lang="ar-sa">
    	<b>3</b></span></p>
    	<p><span lang="ar-sa">الاسم*:<input type="text" name="name2" size="20"></span></p>
    	<p><span lang="ar-sa">الجوال*:<input type="text" name="mobile2" size="20"></span></p>
    	<p><span lang="ar-sa">الايميل*:<input type="text" name="email2" size="20"></span></p>
    	<p align="center">&nbsp;</p>
    	<p align="center"><input type="submit" value="أرسل" name="B1"></p>
    </form
    وفي ملف send.php

    كود PHP:
    <?php
    // الاتصال بالقاعدة
    include('config.php');
    //جلب محتويات الحقول
    //بيانات الشخص الاول
    $name=$_POST['name'];
    $mobile=$_POST['mobile'];
    $email=$_POST['email'];
    //بيانات الثاني
    $name0=$_POST['name0'];
    $mobile0=$_POST['mobile0'];
    $email0=$_POST['email0'];

    //بيانات الثالث
    $name1=$_POST['name1'];
    $mobile1=$_POST['mobile1'];
    $email1=$_POST['email1'];
    //بيانات الرابع
    $name2=$_POST['name2'];
    $mobile2=$_POST['mobile2'];
    $email2=$_POST['email2'];

    //عمل مصفوفة من كل بيانات كل زائر على حدة
    $guest1=array($name$mobile$email);
    $guest2=array($name0$mobile0$email0);
    $guest3=array($name1$mobile1$email1);
    $guest4=array($name2$mobile2$email2);
     
    //التحقق من عدم وجود تكرار في بيانات الحقول
    if($guest1=$guest2 or $guest1=$guest3 or $guest1=$guest4 or $guest2=$guest3 or $guest2=$guest4 or $guest3=$guest4);{
        echo 
    "عفوا لايمكن التسجيل ببيانات مكررة";
        }else{

       if(

    $check=mysql_num_rows(mysql_query("select * from omla where name='$name' or
     mobile='
    $mobile' or email='$email' "));
    if(
    $check==0){

    //كود ادخال البيانات
    $sql="INSERT INTO omla(id,name,mobile,email) VALUES(NULL,'$name','$mobile','$email')";
    $insert=mysql_query($sql);

    }else{

    echo 
    "عفوا بعض المعلومات موجودة في القاعدة";


       }
       }
    ?>
    اين الخلل اخواني الكرام في الكود السابق
    بارك الله فيكم؟





    __________________
    لاتنس ذكر الله..


  2. #2
    عضو نشيط
    تاريخ التسجيل
    Aug 2007
    المشاركات
    110


    انا برد عليك حسب معرفتي

    لانهة الحقيقة لا يوجد لدي php على الجهاز حاليا لاتأكد من الحل

    اولا

    في الشرط التالي اتوقع انه يجب ان تكون علامة اليساوي مزدوجة ==
    if($guest1=$guest2 or $guest1=$guest3 or $guest1=$guest4 or $guest2=$guest3 or $guest2=$guest4 or $guest3=$guest4);{

    ثانيا ارجو كتابة الخلل الذي يظهر لك في الكود ليسهل عملية البحث






  3. #3
    عضو جديد
    تاريخ التسجيل
    Aug 2007
    المشاركات
    25


    كود PHP:
    if($guest1=$guest2 or $guest1=$guest3 or $guest1=$guest4 or $guest2=$guest3 or $guest2=$guest4 or $guest3=$guest4); 
    الغي الفاصلة المنقوطة في اخر هذا السطر وسيعمل معك جيدا.





    __________________
    info {at} cems-it.com

  4. #4
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2003
    المشاركات
    595


    أخوي الكريمين جربت الفكرتين ولكن لازال الخطأ يظهر وهذه رسالته :
    كود:
    Parse error: syntax error, unexpected T_ELSE in c:\appserv\www\pro\t2\t\send.php on line 31
    وهذا الكود بعد التعديل :
    كود PHP:
    <?php
    // الاتصال بالقاعدة
    include('config.php');
    //جلب محتويات الحقول
    //بيانات الشخص الاول
    $name=$_POST['name'];
    $mobile=$_POST['mobile'];
    $email=$_POST['email'];
    //بيانات الثاني
    $name0=$_POST['name0'];
    $mobile0=$_POST['mobile0'];
    $email0=$_POST['email0'];

    //بيانات الثالث
    $name1=$_POST['name1'];
    $mobile1=$_POST['mobile1'];
    $email1=$_POST['email1'];
    //بيانات الرابع
    $name2=$_POST['name2'];
    $mobile2=$_POST['mobile2'];
    $email2=$_POST['email2'];

    //عمل مصفوفة من كل بيانات كل زائر على حدة
    $guest1=array($name$mobile$email);
    $guest2=array($name0$mobile0$email0);
    $guest3=array($name1$mobile1$email1);
    $guest4=array($name2$mobile2$email2);
     
    //التحقق من عدم وجود تكرار في بيانات الحقول
          
    if($guest1=$guest2 or $guest1=$guest3 or $guest1=$guest4 or $guest2=$guest3 or $guest2=$guest4 or $guest3=$guest4){
        echo 
    "عفوا لايمكن التسجيل ببيانات مكررة";
           }else{

       if(

    $check=mysql_num_rows(mysql_query("select * from omla where name='$name' or
     mobile='
    $mobile' or email='$email' "));
    if(
    $check==0){

    //كود ادخال البيانات
    $sql="INSERT INTO omla(id,name,mobile,email) VALUES(NULL,'$name','$mobile','$email')";
    $insert=mysql_query($sql);

               if(
    $insert) {
                  echo 
    "شكرا لتسجيلك معنا";
                  }else{
                      echo 
    "هناك خلل لم يتم ادراج البيانات";

    }else{

    echo 
    "عفوا بعض المعلومات موجودة في القاعدة";



         }
       }
    ?>
    شاكرا تعاونكم وصبركم معي





    __________________
    لاتنس ذكر الله..

  5. #5
    عضو جديد
    تاريخ التسجيل
    Aug 2007
    المشاركات
    25


    قمت بتعديلات بسيطه بنفس الفكرة التي برمجت انت بها اي لم اعدل الفكرة ولو كان بها مشكلة فاخبرني لأصيغه لك بفكرة مني.
    كود PHP:
    <?php
    // الاتصال بالقاعدة
    include('config.php');
    //جلب محتويات الحقول
    //بيانات الشخص الاول
    $name=$_POST['name'];
    $mobile=$_POST['mobile'];
    $email=$_POST['email'];
    //بيانات الثاني
    $name0=$_POST['name0'];
    $mobile0=$_POST['mobile0'];
    $email0=$_POST['email0'];
    //بيانات الثالث
    $name1=$_POST['name1'];
    $mobile1=$_POST['mobile1'];
    $email1=$_POST['email1'];
    //بيانات الرابع
    $name2=$_POST['name2'];
    $mobile2=$_POST['mobile2'];
    $email2=$_POST['email2'];
    //عمل مصفوفة من كل بيانات كل زائر على حدة
    $guest1=array($name$mobile$email);
    $guest2=array($name0$mobile0$email0);
    $guest3=array($name1$mobile1$email1);
    $guest4=array($name2$mobile2$email2);
    //التحقق من عدم وجود تكرار في بيانات الحقول
    if($guest1==$guest2 or $guest1==$guest3 or $guest1==$guest4 or $guest2==$guest3 or $guest2==$guest4 or $guest3==$guest4)
    {
        echo 
    "عفوا لايمكن التسجيل ببيانات مكررة";
    }
    else
    {
        if(
    mysql_num_rows(mysql_query("select * from omla where name='$name' or mobile='$mobile' or email='$email' "))==0)
        {
            
    //كود ادخال البيانات
            
    $sql="INSERT INTO omla(id,name,mobile,email) VALUES(NULL,'$name','$mobile','$email')";
            
    $insert=mysql_query($sql);
        }
        else
        {
            echo 
    "عفوا بعض المعلومات موجودة في القاعدة";
        }
    }
    ?>






    __________________
    info {at} cems-it.com

  6. #6
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2003
    المشاركات
    595


    أخي مسلم اشكر لك صبرك معي لكني جربت الكود المعدل من قبلك
    ويظهر بنفس رسالة الخطأ السابقة وهي

    Parse error: syntax error, unexpected T_ELSE in c:\appserv\www\pro\t2\t\send.php on line 31





    __________________
    لاتنس ذكر الله..

  7. #7
    عضو جديد
    تاريخ التسجيل
    Aug 2007
    المشاركات
    25


    أخي الكريم خذ الكود في اخر رد لي وسيعمل معك باذن الله تعالي ولا تتسرع في الرد :-)





    __________________
    info {at} cems-it.com

  8. #8
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2003
    المشاركات
    595


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





    __________________
    لاتنس ذكر الله..

  9. #9
    عضو جديد
    تاريخ التسجيل
    Aug 2007
    المشاركات
    25


    اخي الكريم اخذت الكود الذي كتبته لك اخر مرة وجربته مرة أخري ولم يظهر اي مشكلة في السطر الذي تقصده وانا متأكد منه ووضعته في ملف مرفق تأكد من رفعه علي الموقع.





    الملفات المرفقة الملفات المرفقة
    __________________
    info {at} cems-it.com

  10. #10


    جرب هذا

    كود PHP:
    <?php
    // الاتصال بالقاعدة
    include('config.php');
    //جلب محتويات الحقول

    //بيانات الشخص الاول
    $name $_POST['name'];
    $mobile $_POST['mobile'];
    $email $_POST['email'];

    //بيانات الثاني
    $name0 $_POST['name0'];
    $mobile0 $_POST['mobile0'];
    $email0 $_POST['email0'];

    //بيانات الثالث
    $name1 $_POST['name1'];
    $mobile1 $_POST['mobile1'];
    $email1 $_POST['email1'];

    //بيانات الرابع
    $name2 $_POST['name2'];
    $mobile2 $_POST['mobile2'];
    $email2 $_POST['email2'];

    //عمل مصفوفة من كل بيانات كل زائر على حدة
    $guest1 = array($name$mobile$email);
    $guest2 = array($name0$mobile0$email0);
    $guest3 = array($name1$mobile1$email1);
    $guest4 = array($name2$mobile2$email2);

     
    //التحقق من عدم وجود تكرار في بيانات الحقول
    if($guest1 == $guest2 or $guest1 == $guest3 or $guest1 == $guest4 or $guest2 == $guest3 or $guest2 == $guest4 or $guest3 == $guest4)
    {
        echo 
    "عفوا لايمكن التسجيل ببيانات مكررة";
    }
    else
    {
        
    $check mysql_num_rows(mysql_query("select * from omla where name = '$name' or mobile = '$mobile' or email = '$email'"));
        if(
    $check == 0)
        {
            
    //كود ادخال البيانات
            
    $insert mysql_query("INSERT INTO omla (id, name, mobile, email) VALUES (NULL, '$name', '$mobile', '$email')");
            
            if(
    $insert)
            {
                echo 
    "شكرا لتسجيلك معنا";
            }
            else
            {
                echo 
    "هناك خلل لم يتم ادراج البيانات";
            }
        }
        else
        {
            echo 
    "عفوا بعض المعلومات موجودة في القاعدة";
        }
    }
    ?>

    اذا كانت هناك مشكلة أخرى فالأكيد أنها من ملف config.php





    __________________
    تابعني على Twitter

  11. #11
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2003
    المشاركات
    595


    أخي الكريم جزاك الله خيرا على الجهد معي
    لكني حملت الملف ولاحظت التالي :
    - لاتظهر رسالة ان البيانات مكررة الا في حالة كون كل البيانات متطابقة لشخصين او اكثر
    وليس هذا المطلوب المطلوب لو كان هناك تطابق في حقل رقم الجوال بين اثنين فقط فانه
    تظهر له رسالة تقول لايمكنكم التسجيل ببيانات مكررة ...
    - عند تعبئة النموذج ببيانات كاملة وغير متطابقة . لايتم ادراجها في القاعدة ولا تظهر اي رسالة تظهر فقط صفحة بيضاء بعد الارسال ..
    المفروض ان يتم ادراج بيانات الاشخاص الأربعة في القاعدة بشكل متوالي .
    ملف الكونفق سليم جدا واستعمله مع بقية صفحات الموقع

    وللتجربة هذا كود جدول قاعدة البيانات :
    كود PHP:
    CREATE TABLE `omla` (
      `
    idint(99NOT NULL default '0',
      `
    namevarchar(150NOT NULL,
      `
    mobilevarchar(150NOT NULL,
      `
    emailvarchar(150NOT NULL,
      
    PRIMARY KEY  (`id`)
    ENGINE=MyISAM DEFAULT CHARSET=latin1
    جزاكم الله خيرا جميعا





    __________________
    لاتنس ذكر الله..

  12. #12
    عضو نشيط جدا
    تاريخ التسجيل
    Jun 2003
    المشاركات
    595


    اخواني الكرام
    هل طلبي معقد لها الدرجة...
    لا اعتقد ..
    هي كلها مشكلتين ..
    - عدم السماح بادخال بيانات مكررة
    - تكرار الإدخال لنفس الحقول في القاعدة





    __________________
    لاتنس ذكر الله..

  13. #13
    عضو نشيط
    تاريخ التسجيل
    Nov 2005
    المشاركات
    281


    اخي الكريم بالنسبة لطلبك الأول الخاص بوجود رقم الجوال من قبل هذا كود للتأكد :
    كود PHP:
    $query mysql_query("SELECT * FROM `colom name` WHERE mobile_number='" $number "'");
    $query_num mysql_num_rows($query);
    if (
    $query_num 0)
    {
    echo 
    'عذراً يبدو أن مسجل لدينا من قبل';
    }else{
    // عملية إدخال البيانات هُنا 

    بالنسبة لكود التأكد من تطابق الحقول هذا هو ضعه قبل الكود اللي كتبته لك :
    كود PHP:
    if (شروط اللي انت عاوزها هنا){
    echo 
    'عُذراً ولكن هناك حقول مكررة';
    }else{ 
    يعني بالنتيجة الكود ككل هو :


    كود PHP:
    if (شروط اللي انت عاوزها هنا){
    echo 
    'عُذراً ولكن هناك حقول مكررة';
    }else{
    $query mysql_query("SELECT * FROM `colom name` WHERE mobile_number='" $number "'");
    $query_num mysql_num_rows($query);
    if (
    $query_num 0)
    {
    echo 
    'عذراً يبدو أن مسجل لدينا من قبل';
    }else{
    // عملية إدخال البيانات هُنا 
    }

    جربه .

    تحياتي
    فراس





    __________________
    مدونتي
    Www.AlMashroo.Com

  14. #14
    عضو نشيط
    تاريخ التسجيل
    Sep 2006
    المشاركات
    69


    السلام عليكم

    أخوي قمت بكتابة كود لك يقوم بالآتي:
    - التحقق من عدم تكرار أي بيانات مرسلة
    - التحقق من عدم وجود أي حقول فارغة أو تحتوي مسافات بيضاء فقط
    - حذف المسافات البيضاء الزائدة من البيانات المرسلة
    - التحقق من عدم تطابق أي بيانات مرسلة مع بيانات أي عميل مسجل مسبقا في القاعدة

    الملفات في المرفقات

    ملاحظة: قمت بكتابة الكود دون تجربته لأني مستعجل نوعا ما. المعذرة عن أي أخطء قد توجد.





    الملفات المرفقة الملفات المرفقة
    • نوع الملف: zip Omla.zip‏ (1.4 كيلوبايت, 116 مشاهدات)





ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض