التغطية المصورة ليوم سوالف: الجزء الأول، الجزء الأخير
الفائزون في المسابقة الأصغر لسوالف كاست

 

العودة   سوالف سوفت > قسم تطوير وبرمجة المواقع للمتقدمين > PHP
المدوّنات البحث مشاركات اليوم اجعل كافة المشاركات مقروءة

رد  
 
LinkBack أدوات الموضوع
عضو نشيط
تاريخ التسجيل: Jan 2005-
#1 (permalink)  
هل من يساعدني في تعديل هذا الشرط


السلام عليكم اخواني

لدي نموذج تسجيل اعضاء في قاعدة البيانات هو التالي
كود PHP:
                /* Check username */
                
if (
                    !isset(
$_SESSION["REGISTER"]["username"]) 
                    || 
$_SESSION["REGISTER"]["username"] == "" || 
                    !
preg_match($CONF["REGEXP_USERNAME"], $_SESSION["REGISTER"]["username"])
                    || 
strlen($_SESSION["REGISTER"]["username"]) < $CONF["USERS_USERNAME_MIN_LEN"]
                    || 
strlen($_SESSION["REGISTER"]["username"]) > $CONF["USERS_USERNAME_MAX_LEN"]) {
                    
$tpl -> Zone("error""username");
                    
$tpl -> Zone("usernameerror""lenerror");
                } 
ما اريده تحديدا ان اجعل هذا الامر لا يخاطب REGEXP_USERNAME و التي هي تمنع الاعضاء من التسجيل باللغة العربية او ترك فراغات في اسمائهم
لكن بنفس الوقت اريد سطور التاكد من طول الأسم ان تبقى تعمل فهل هذا ممكن.
اي ان مشكلتي مع هذا السطر
كود PHP:
                    !preg_match($CONF["REGEXP_USERNAME"], $_SESSION["REGISTER"]["username"]) 
هل يمكن توقيف عمله

قد يقول البعض انه يمكنني تعديل سطر REGEXP_USERNAME من ملف الكونفيج لقد حاولت كثير لكن دون فائدة
و كلما حاولت التعديل بهذه السطور اعلاه ,كان هذا يؤدي الى توقف عمل صفحة التسجيل و ذلك لضعف المامي بال php

اتمنى ان اجد من يستطيع تعديل هذه السطور لأحقق الهدف المرجو منها و شكرا






hosam غير متواجد حالياً   قديم 04-01-2008, 03:27 AM
رد مع اقتباس
عضو فعال
تاريخ التسجيل: Apr 2002-
#2 (permalink)  

جرب

كود PHP:
                /* Check username */
                
if (
                    !isset(
$_SESSION["REGISTER"]["username"]) 
                    || 
$_SESSION["REGISTER"]["username"] == "" || 
                    
strlen($_SESSION["REGISTER"]["username"]) < $CONF["USERS_USERNAME_MIN_LEN"]
                    || 
strlen($_SESSION["REGISTER"]["username"]) > $CONF["USERS_USERNAME_MAX_LEN"]) {
                    
$tpl -> Zone("error""username");
                    
$tpl -> Zone("usernameerror""lenerror");
                } 






__________________
mahmoud009 سابقاً
منتدى بي اتش بي
فِكرة لتقنية المعلومات
فِكرة غير متواجد حالياً   قديم 04-01-2008, 03:29 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Jan 2005-
#3 (permalink)  

ممتاز لك جزيل الشكر لقد افادني حلك بما اريد
لكن بقيت مشكلة بسيطة لا تؤثر على حلك و اتصور ان سببها البرمجية التي تتعامل مع ترميز utf8
مثلا انا وضعت اقل عدد لاحرف اسم المستخدم هو 4
الأمر يعمل بشكل سليم مع الأحرف الأنكليزية
لكن عند العربي اذا كتب اسم المستخدم حرفين و ليكن (رن) فان السكريبت يقبلها و السبب ربما ان البرمجية تحفظه بقاعدة البيانات بالشكل التالي ط±ظ†
اي تتحول الى 4 حروف و بالتالي يعتقد الكود ن المسجل استوفى الشروط

اكرر انه الحل مفيد المهم ان يكتب المستخدم اللغة التي يريد و مع فراغات و بحروف اكثر من 1 على اقل تقدير

شكرا مجددا و بالتوفيق






hosam غير متواجد حالياً   قديم 04-01-2008, 05:12 AM
رد مع اقتباس
رد


 

أدوات الموضوع

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

كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة


المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
قمه الغباء والفشل [سنموت فى سنه 2012] اسامة الهادى سوالف عامة 26 05-01-2008 12:43 AM
ممكن يا اخوان احد يساعدني في هذا الكود javascript فتح الصفحة في صفحة جديدة!!!!!!!!!! elkaser تطوير الويب 3 01-05-2007 09:25 PM
اليوتوبيا (قلم : محمد سنجر ) عادل الحربي سوالف عامة 3 01-05-2007 05:23 PM
من يساعدني في تغير هذا الكود الهتمل الخاص بأخبار الموقع أبو مبدع تطوير الويب 4 08-09-2003 12:32 AM


الساعة الآن: 04:12 AM بتوقيت المملكة العربية السعودية