• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
اجرا نشدن AND
#1
Lightbulb 
یه شرط داشتم به این صورت:
کد پی‌اچ‌پی:
    if(    $User1->CheckEmail($_POST['TEmail'])
        && 
$User1->CheckTel($_POST['TTelSabet'])
        && 
$User1->CheckMobile($_POST['TTelHamrah'])
        && 
$User1->CheckTel($_POST['TADSLTEL'])
        && 
$User1->CheckAddress($_POST['TAddress'])
        ) 

وقتی قالب ایمیل و تلفن رو با هم اشتباه میزدم، فقط گزارش اشتباه بودن ایمیل داده میشد، آخر سر به این نتیجه رسیدم که تو اجرای دستور AND اگه یکی از شرط ها false بشه دیگه بقیه اش اجرا نمیشه...
احتمالاً برای OR هم اینطوریه، یعنی اگه به نتیجه true برسه دیگه بیخیال بقیه شرط میشه...
جالب بود، نمیدونستم...

الان کدم این شد:
کد پی‌اچ‌پی:
    $a=$User1->CheckEmail($_POST['TEmail']);
    
$b=$User1->CheckTel($_POST['TTelSabet']);
    
$c=$User1->CheckMobile($_POST['TTelHamrah']);    
    
$d=$User1->CheckTel($_POST['TADSLTEL']);
    
$e=$User1->CheckAddress($_POST['TAddress']);
    if(
$a && $b && $c && $d && $e 
هر که با مرغ هوا دوست شود - خوابش آرامترین خواب جهان خواهد بود.
  پاسخ
تشکر شده توسط :
#2
نقل قول:احتمالاً برای OR هم اینطوریه، یعنی اگه به نتیجه true برسه دیگه بیخیال بقیه شرط میشه...
آره
ولی سعی کن پیامهارو دونه دونه هندل کنی
نه اینکه مثلاً یک پیام بده فرم ناقص است. یا فرم باید صحیح پر شود و غیره...
وبلاگ: Yousha.Blog.ir


 کد کمتر => خطای کمتر => قابل فهمتر => خوانایی بالاتر => نگهداری بهتر

  پاسخ
تشکر شده توسط :
#3
حواسم هست، یه فیلد تو کلاس هست به اسم ErrorFields

با هر check این اتفاق میوفته:
کد پی‌اچ‌پی:
$this->ErrorFields.="قالب آدرس ایمیل اشتباه است"."<br>"

Rolleyes

آخرشم که:

کد پی‌اچ‌پی:
$User1->getError(); 
هر که با مرغ هوا دوست شود - خوابش آرامترین خواب جهان خواهد بود.
  پاسخ
تشکر شده توسط : hidensoft


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان