reza_101010

مشکل در ارسال آرایه به تابع و بازگشت آرایه از تابع

6 پست در این موضوع

ارسال شده در (ویرایش شده)

سلام

آقا من به مشکل برخوردم این کد کجاش مشکل داره!!!

آرایه به تابع ارسال می شه و خروجی اشتباه میشه چون شرط را درست برسی نمی کنه دوستان یه نگاهی بندازند واگر هم مقادیر شرط رو دست بزنی ارور می ده که متغییر رو نمی تونم پیدا کنم !!!!

<?php
$user=array('reza'=>12,'karin'=>2233,'kazem'=>3345);


$n=check($user);

foreach($n as $k);
{
   echo $k."<hr/>";
}

////////////////////
function check ($user)
{
   foreach($user as $p => $w )
   {
       if (($p =='reza') AND ($w==12))
       {
       $msg1="ok your user is ok login active"."<hr/>";
       $msg2="ok your pass word s true"."<hr/>";
       $msg3="please Wait";
       }
   else  
  {
       $error="Not true your User & PassWors please Try Again!!!1";
 }
   }
   $result=array($msg1,$msg2,$msg3,$error);
   return $result;
}
?>

ویرایش شده در توسط reza_101010

Share this post


Link to post
Share on other sites
آموزش ووکامرس قالب جوملا قالب وردپرس قالب رایگان وردپرس قالب رایگان جوملا هاست نامحدود هاست جوملا هاست لاراول هاست وردپرس هاست ارزان هاست ربات تلگرام خرید دامنه آموزش ساخت ربات تلگرام با php آموزش لاراول آموزش cPanel آموزش php آموزش فرم ساز RSform آموزش ساخت ربات جذب ممبر آموزش ساخت ربات دوستیابی آموزش ساخت ربات فروشگاهی برای ووکامرس آموزش طراحی سایت داینامیک با php آموزش بخش پشتیبانی با rsticket

فکر کنم با این کد منظورما بهتر برسونم

<?php
$user=array('reza'=>12,'karin'=>2233,'kazem'=>3345);


$n=check($user);

print_r($n);

////////////////////
function check ($user)
{
   foreach($user as $p => $w )
   {
       if (($p =='reza') AND ($w==12))
       {
       $msg1="ok your user is ok login active"."<br/>";
       $msg2="ok your pass word s true"."<br/>";
       $msg3="please Wait";
       break;
       $result=array($msg1,$msg2,$msg3);
       return $result;

       }
 //  else  
//   {
//        $error="Not true your User & PassWors please Try Again!!!1";
//  }
   }

   return 0;
}
?>

مگه شرط درست نیست چرا تابع صفر رو بر میگردونه

Share this post


Link to post
Share on other sites

خب شما خودتون زدید خروجی 0 برگردونه

ضمن اینه شما دستور else را خارج از بلوک foreach بزن درست میشه

Share this post


Link to post
Share on other sites

ارسال شده در (ویرایش شده)

else که بدون if جواب نمی ده if داخل بلوکه foreach هستش

داداش من یه آرایه را فرستادم تو تابع تو تابع مقادیر ارایه را دارم چک می کنم بعدش اگر مفادیر آرایه با مقدار داخل تابع صحیح بود یه پیغام رو چاپ کنه در غیر این صورت یه چیز دیگه رو چاپ کنه عنایت داشته باشید به مثال اول

خوب الان مشکل من اینه که مقداری که در آرایه وجود داره با مقادیری که در شرط در تابع قرار داره یکی هستش اما خروجی چیز دیگه ای هست !!!!!!؟؟؟؟؟؟؟؟

<?php
$user=array('reza'=>12,'karin'=>2233,'kazem'=>3345);


$n=check($user);

print_r($n);

////////////////////
function check ($user)
{
   foreach($user as $p => $w )
   {
       if (($p =='reza') AND ($w==12))
       {
       $msg1="ok your user is ok login active"."<br/>";
       $msg2="ok your pass word s true"."<br/>";
       $msg3="please Wait";
       break;
       $result=array($msg1,$msg2,$msg3);
       return $result;

       }



   }

   return 0;
}
?>

ویرایش شده در توسط reza_101010

Share this post


Link to post
Share on other sites

خب شما یه زحمت بکش به جای اینکه داخل $msg بگذارید همون جا با دستور echo چاپ بزن ببین مشکل حل میشه

Share this post


Link to post
Share on other sites

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری