رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
دریافت اطلاعات یوزر
#1
برای نمایشش توی view این طوری کد زدم ارور داد

<?php foreach($offer as $key => $offer):   ?>
    <h2><?=$users[$key]->uname; ?>-<?=$offer->price; ?></h2>
  <pre>
    <?=$offer->description; ?>
  </pre>
<?php endforeach; ?>




Array ( [0] => appmodelsUsers Object ( [_attributes:yiidbBaseActiveRecord:private] => Array ( [id] => 1 [uname] => رضا [pword] => u [fname] => [lname] => [gender] => [birth_date] => 0000-00-00 00:00:00 [city_id] => 0 [bio] => [reg_method] => [reg_date] => 0000-00-00 00:00:00 [email] => [phone] => [referer] => 0 [email_activation_key] => [phone_activation_key] => [bank_acc_num] => [credit_card_num] => [bank_name] => [acc_owner_name] => [status] => ) [_oldAttributes:yiidbBaseActiveRecord:private] => Array ( [id] => 1 [uname] => رضا [pword] => u [fname] => [lname] => [gender] => [birth_date] => 0000-00-00 00:00:00 [city_id] => 0 [bio] => [reg_method] => [reg_date] => 0000-00-00 00:00:00 [email] => [phone] => [referer] => 0 [email_activation_key] => [phone_activation_key] => [bank_acc_num] => [credit_card_num] => [bank_name] => [acc_owner_name] => [status] => ) [_related:yiidbBaseActiveRecord:private] => Array ( ) [_errors:yiibaseModel:private] => [_validators:yiibaseModel:private] => [_scenario:yiibaseModel:private] => default [_events:yiibaseComponent:private] => Array ( ) [_behaviors:yiibaseComponent:private] => Array ( ) ) )

برای نمایش از چه کدی استفاده کنم ؟
پاسخ
تشکر شده توسط:
#2
چه خطایی داد؟ کد داخل اکشن کنترلر رو هم بنویسید. سه چهارم حل مسئله، فهمیدن دقیق اونه.
پاسخ
تشکر شده توسط:
#3
کنترولر :

  $id=intval($_GET['id']);
        $offers =new Offers;
       $objects=Objects::find()->where(['id' => $id])->One();
       $fvalues=Fieldsrelationship::find()->where(['object_id' => $objects->id])->All();
       $fields=Fields::find()->where(['object_type_id' => $objects->object_type_id])->All();
       $users = [];
       foreach(Offers::findAll(['object_id' => $objects->id]) as $offer) {
         $users[] = Users::findOne($offer->user_id);
       }


         if(isset($_POST['Offers'])){
         $jdf=Yii::$app->jdf->date('Y-n-j h:i:s', null, null, null, 'en');
         $offers->attributes=$_POST['Offers'];
         $offers->object_id = $id;
         $offers->user_id = '1';
         $offers->submit_date = $jdf;
         $offers->status = '1';
         if ($offers->load(Yii::$app->request->post()) && $offers->save())
         {
           return $this->redirect(['show', 'id' => $id]);
         }
       }
       return $this->render('show',['objects'=>$objects,'users'=>$users,'offers'=>$offers,'offers'=>$offers,'offer'=>$offer,'fields'=>$fields,'fvalues'=>$fvalues]);

کد های بالا هم به ترتیب کد های view و خروجی ارایه users هست .
پاسخ
تشکر شده توسط:
#4
بنظرم نمیشه ارایه دوبعدی را با foreach خوند ؟

Undefined index: id

روی این خط هم ارور داده

<h2><?=$users[$key]->uname; ?>-<?=$offer->price; ?></h2>

یعنی ارایه یوزر را ایندکسی نداشته یا ایندکس تعریف نده داره .
پاسخ
تشکر شده توسط:
#5
اینجور وقتها یه چنین کدی بنویسید تا متوجه بشین چی به چیه:
<pre><?= VarDumper::dump($offer, 10, true) ?></pre>
پاسخ
تشکر شده توسط:




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