إضافة رد 
 
  • 0 اصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5

التباس في استخدام احد العوامل بداخل شرط if في Php (If statement)
Icon9 التباس في استخدام احد العوامل بداخل شرط if في Php
بسم الله الرحمن الرحيم
التباس في استخدام احد العوامل بداخل شرط

مرحبا،،
لدي التباس بسيط في طريقة استخدام العامل or او ||
في احد الشروط بداخل احد السكريبتات. (هاك اخفاء الروابط عن الزوار،، اريد اضافة الغير مفعلين).

مثلا أنا عندي:


كود PHP:
if($mybb->user['usergroup'] == "1 || 5")
        {
        
//do something
        



او استخدم or Eam

لقد طالعت شرح الاخ بيبو هنا:- غير مسموح بعرض الروابط الا بعد التسجيل و تفعيل العضوية

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

اشكركم مسبقا على المساعدة.
تحياتي flower
مع التحية Bestpublisher
سيستمر غيابي عن الانترنت لعدة اسابيع او شهور،،
ادعوا لي و اسئلوا الله لي العافية
2009-06-15, 11:37 PM
مشاركات: #1
عرض جميع مشاركات هذا العضو
اقتباس هذه الرسالة فى الرد
RE: التباس في استخدام احد العوامل بداخل شرط if في Php
بسم الله الرحمن الرحيم
نعم العاملين لهم نفس الأداء, الا ان or تعنى ان تتم المشروطة فى حالة تحقق احد الطرفين فقط وليس الأثنين معا, اما || تعنى و/او

يعنى تتحقق المشروطة اذا توفر الأثنين معا, او توفر احدهم فقط. (لست متأكد بنسبة 100% لأنى مبتعد عن الأمور البرمجية منذ فترة كبيرة بسبب ضغط الدراسة والعمل معا, وهذه الأمور تفقدها عندما تبتعد عنها, لكن بإذن الله المعلومة صحيحة)

كما انصحك ان تحذف علامة التنصيص "" طلامة انك تتعامل مع ارقام يعنى يصبح الأمر كالتالى
1 || 5 بدون علامات التنصيص وغير == بـ ===
(الأولى تعنى تحقق المشروطة اذا كانت القيمة متساوية, اما الثانية يجب ان تتساوى القيمة ونوع المدخل, وهذه ضرورية, لأن كما تعلم اذا كنت تقارن فى اشياء يمكن ان تكون قيمتها اما 1 او 0 فيمكن لـ 1 ان يتساوى مع true و 0 يتساوى مع false لذلك === تمنع مثل هذه الإلتباسات, فهى تتطلب تحقيق القيمة ونوع المدخل بأن واحد)

2009-06-16, 12:12 AM (اخر تعديل لهذه المشاركة : 2009-06-16 12:15 AM بواسطة Pepo.)
مشاركات: #2
عرض جميع مشاركات هذا العضو
اقتباس هذه الرسالة فى الرد
RE: التباس في استخدام احد العوامل بداخل شرط if في Php
بسم الله الرحمن الرحيم
شكرا لك اخي بيبو على التوضيح
و على المعلومة الاضافية فعلا مفيدة،، سأحاول و ان شاء الله تنجح.
بارك الله فيك.

2009-06-16, 01:56 AM
مشاركات: #3
عرض جميع مشاركات هذا العضو
اقتباس هذه الرسالة فى الرد
RE: التباس في استخدام احد العوامل بداخل شرط if في Php
بسم الله الرحمن الرحيم
مرحبا،،
جربت الحل،، لكن المشكلة بقيت نفسها و لم يشتغل الهاك !!
فلم اعرف السبب، و بدأت ابحث فاكتشفت شيئين 2 :

1- انني غبي Smack :
اذا كان الزائر ضيف او عضو،،
فالزائر لا يمكنه ان يكون ضيف و عضو في وقت واحد.
لذا فاستعمال || او or نفسه.
(هناك من يقول البرمجة تحتاج شوية غباء) flower

2- و اكتشفت ان السينتاكس للشروط المتعددة في php هو :
هذا خطأ:
كود PHP:
if($mybb->user['usergroup'] == "1||5" )
{
//do something


و هذا هو الصح:

كود PHP:
        if( ($mybb->user['usergroup'] == "1" ) || ($mybb->user['usergroup'] == "5" ) )
        {
//do something
        



و قد نجحت في تحويل الهاك الى اخفاء الروابط عن الزوار و الغير مفعلين هيه

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

2009-06-21, 10:11 PM
مشاركات: #4
عرض جميع مشاركات هذا العضو
اقتباس هذه الرسالة فى الرد
RE: التباس في استخدام احد العوامل بداخل شرط if في Php
بسم الله الرحمن الرحيم
نعم اخى مظبوط الـ Syntax كان خاطئ لأن رموز المقارنة او المشروطات لا يجب وضعها داخل علامات التنصيص.
وعزرا لأنى سهوت عن ان انبهك لهذا, لكن من الجيد انك اكتشفتها بنفسك.

وايضا الـ Syntax الذى استخدمته انت يمكنك تنفيذه بطريقة اكثر انجازا
كود PHP:
if($mybb->user['usergroup'] == || )
        {
//do something
        


2009-06-21, 11:54 PM
مشاركات: #5
عرض جميع مشاركات هذا العضو
اقتباس هذه الرسالة فى الرد
إضافة رد 

التباس في استخدام احد العوامل بداخل شرط if في Php



التنقل السريع: