kingblog 14 ارسال شده در اسفند 93 گزارش بازنشر ارسال شده در اسفند 93 (ویرایش شده) مشکل این کد چیه:$MerchantID = '1';if($MerchantID = '1'){$trak = $result['RefID'];$T = array();$date = time();$next_d = array('one'=>60*60*24*30,'tree'=>60*60*24*90,'six'=>60*60*24*180,'tw'=>60*60*24*320);foreach($basteha as $t=>$vl){if($t !== 'amount' && $n = $this->network->get_vips_by_name($t)){$sarresid = $next_d[$vl->vipprd]+$date;$db2->query('INSERT INTO users_vip SETuser_id="'.$vl->vipuser.'",vip_id="'.$n->id.'",vip_name="'.$n->name.'",vip_p="'.$vl->vipprd.'",date="'.$date.'",next_date= "'.$sarresid.'" ,rkey="'.$vl->viprand.'",trak="'.$trak.'",amount="'.$vl->vipamount.'"');$this->network->get_user_vip_by_id($n->id,$vl->vipuser,true);}}}این خطا رو میده:warning:: Invalid argument supplied for foreach()کد رو توی دیتابایس ذخیره میکنه ولی وقتی ذخیره شد توی صفحه سفید خطای بالا رومیده ویرایش شده اسفند 93 توسط kingblog نقل قول لینک به ارسال
فرحان 997 ارسال شده در اسفند 93 گزارش بازنشر ارسال شده در اسفند 93 سلام. $basteha توی این کدی که گذاشتید اصلا نیستش. مشکل هم احتمالا اینه که توی حالت خاصی چیزی که باید توی متغییرتون قرار میگرفته ، نگرفته و باعث شده که متغییر بسته ها آرایه نباشه.موفق باشید. 2 نقل قول لینک به ارسال
kingblog 14 ارسال شده در اسفند 93 مالک گزارش بازنشر ارسال شده در اسفند 93 این کل کد هست:<?phpif( !$this->network->id ) { $this->redirect('home');}if( !$this->user->is_logged ) { $this->redirect('signin');}$D->submit = true;$D->error = true;$D->errmsg = "";$this->load_langfile('inside/global.php');$this->load_langfile('inside/settings.php');$D->page_title = $this->lang('settings_profile_pagetitle', array('#SITE_TITLE#'=>$C->SITE_TITLE));include_once('helpers/lib/nusoap.php');$D->doreha = array('one'=>'یک ماهه','tree'=>'سه ماهه','six'=>'شش ماهه','tw'=>'یک ساله');$D->boxes = $this->network->get_box_vips();if($this->param('from') == "ajax" && isset($_POST['id']) && isset($_POST['priud']) ){$vid= intval($_POST['id']);$prd = trim($_POST['priud']);if($this->network->get_user_vip_by_id($vid,$this->user->id)){echo 'ERROR"';echo 'قبلا خریداری شده است'; return;}if(!$baste = $this->network->get_vips_by_id($vid)){ echo 'ERROR:';echo 'چنین بسته ای مجود نیست';return;} $sabad = new stdClass;$sabad->vipname = $baste->name;$sabad->vipid = $baste->id;$sabad->vipprd = $prd;$sabad->vipamount = $baste->$prd;$sabad->vipuser =$this->user->id;$sabad->viprand = md5(time().rand(0,100000).$this->user->info->username.$baste->name);$sabad->viptrak= '';$sabad->vipdate= time();$this->user->sess['VIP_SABAD'][$baste->name] = $sabad;echo $baste->title.' به سبد خرید اضافه شد';return;}if($this->param('from') == "ajax" && isset($_POST['name']) && $this->param('delsabad') == $_POST['name'] ){ $this->user->sess['VIP_SABAD'][$_POST['name']] = false;unset($this->user->sess['VIP_SABAD'][$_POST['name']]);echo 'OK';return; }if($this->param('from') == "pay" && isset($_GET['rand']) ){if(empty($this->user->sess['VIP_SABAD'])){$D->error = true;$D->errmsg .= 'سبد خرید شما خالیست';$this->load_template('settings_vip.php');return;}$D->bv = $this->user->sess['VIP_SABAD'];$this->load_template('settings_vip-pay.php');return;}if( isset($_POST['pay_vip_last']) && $_POST['rand2'] == $this->param('from') ){if(empty($this->user->sess['VIP_SABAD'])){$D->error = true;$D->errmsg .= 'سبد خرید شما خالیست';$this->load_template('settings_vip.php');return;}$Amount = intval($_POST['amount']);$Description = 'خرید بسته ویژه'; // Required$Email = $this->user->info->email; // Optional$Mobile =''; // Optional$CallbackURL = $C->SITE_URL.'settings/vip';$this->user->sess['VIP_USER_RES'] = $result['Authority']; $this->user->sess['VIP_SABAD']['amount'] = intval($_POST['amount']);$this->user->sess[$result['Authority']] = $this->user->sess['VIP_SABAD'];}$basteha = $this->user->sess[$_GET['au']];$Authority = $this->user->sess['VIP_USER_RES'];$au =$Authority;$basteha = $this->user->sess[$au];$Amount = $amount = $basteha['amount'];$pri = $basteha['pri'];$trak = '';//$_GET['refID'];$trak = $result['RefID'];$T = array();$date = time();$next_d = array('one'=>60*60*24*30,'tree'=>60*60*24*90,'six'=>60*60*24*180,'tw'=>60*60*24*320);foreach($basteha as $t=>$vl){if($t !== 'amount' && $n = $this->network->get_vips_by_name($t)){$sarresid = $next_d[$vl->vipprd]+$date;$db2->query('INSERT INTO users_vip SETuser_id="'.$vl->vipuser.'",vip_id="'.$n->id.'",vip_name="'.$n->name.'",vip_p="'.$vl->vipprd.'",date="'.$date.'",next_date= "'.$sarresid.'" ,rkey="'.$vl->viprand.'",trak="'.$trak.'",amount="'.$vl->vipamount.'"');$this->network->get_user_vip_by_id($n->id,$vl->vipuser,true);}}unset($this->user->sess['VIP_USER_RES']);unset($this->user->sess[$_GET['au']]);unset($this->user->sess['VIP_SABAD']);$this->load_template('settings_vip.php');?>الان کد زیر رو از آخر کدها حذف کردم درست شد:$this->load_template('settings_vip.php');ولی پیغام زیر بالای صفحه نشون داده میشه:Warning: Invalid argument supplied for foreach() نقل قول لینک به ارسال
Morteza 34190 ارسال شده در اسفند 93 گزارش بازنشر ارسال شده در اسفند 93 متغییر $basteha مقادیر درستی نداره و یا شاید خالی هست 1 نقل قول لینک به ارسال
kingblog 14 ارسال شده در اسفند 93 مالک گزارش بازنشر ارسال شده در اسفند 93 کد رو اینجوری تغییر دادم درست شد:if (is_array($basteha)) { foreach ($basteha as $t=>$vl) { //do something }}درسته؟ مشکلی که اینجوری نداره؟ نقل قول لینک به ارسال
Morteza 34190 ارسال شده در اسفند 93 گزارش بازنشر ارسال شده در اسفند 93 اگر خطایی نمیده و خروجی درست هست، پس درسته 3 نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .