2017-09-07 30 views
-2

我试图在视图中打印数据,但我得到了非法字符串偏移警告。 data1数组具有我想要在我的视图中显示的数据。 我试图在视图中打印数据,但我得到了非法的字符串偏移警告。 data1数组具有我想要在我的视图中显示的数据。警告消息:非法字符串偏移

我的控制器功能:

public function banker_offers_list() { 

     $banker_id = $this->session->userdata('adminid'); 
     $jobs = $this->Admin_model->get_all_partner_jobs($banker_id); 
     foreach($jobs as $item) 
     { 
      $job_id = $item['job_id']; 
      $uid = $item['uid']; 
      $campaign_id = $item['campaign_id']; 
      $campaign_name = $this->Admin_model->get_campaign_name_by_id($campaign_id); 
      $offer_id = $this->Admin_model->get_offer_id($campaign_id,$uid); //var_dump($offer_id); 
      $buyer_receipt = $this->Admin_model->get_buyer_receipt_by_offer_id($offer_id); //var_dump($buyer_receipt); 

      $data1 = array(
      "job_id" => $job_id,  
      "uid" => $uid, 
      "campaign_id" => $campaign_id, 
      "campaign_name" => $campaign_name, 
      "offer_id" => $offer_id, 
      "buyer_receipt" => $buyer_receipt, 
      ); 

     } 


     $data['data1'] = $data1; 

     $data['page_title'] = 'Banker Offers list - PinkStar'; 
     $this->load->view('admin/banker_offers_list',$data); 
    } 

笔者认为:

<?php 
    if(count($data1) > 0){ 
    foreach ($data1 as $d){ 
     $job_id = $d['job_id']; 
     $campaign_id = $d["campaign_id"]; 
     $buyer_receipt = $d['buyer_receipt']; 
    ?> 
     <tr> 
      <td> 
      <?php 
       echo '#'.$d['offer_id']; 
      ?> 

      <td> 
      <?php 
       echo $d['campaign_name']; 

      ?> 
      </td> 

      <td> 
       <a href="<?php echo base_url(); ?>admin/admin/banker_campaign_details/<?php echo $campaign_id; ?>" target="_blank"> 
       View Campaign Details</a> 
      </td> 
      <td> 
      <?php 
       $index = stripos($buyer_receipt,'*'); 
       $filename = substr($buyer_receipt, 0, $index); ?> 
       <a href="<?php echo base_url(); ?>upload/home/staffs/<?php echo $filename; ?>">Download Receipt</a> 

      </td> 
      <td> 
       <a href="<?php echo base_url(); ?>admin/admin/partner_download_receipt">Download PDF 
       </a> 
      </td> 
     </tr> 
    <?php 
    } 
}else{ ?> 
    <tr><td colspan="6" class="no_records">There are no records available!</td></tr> 
<?php } ?> 
+0

看看https://codereview.stackexchange.com/。看看https://codereview.stackexchange.com/。 – Calimero

+0

你在控制器中设置'$ data'并在视图中获取'$ data1'?那可能怎么样? –

+0

@Calimero on CR我们只处理工作代码,因此这个问题将是脱离主题 – Heslacher

回答

1

更改您的代码如下图所示(更改注释): -

在控制器: -

public function banker_offers_list() { 

    $banker_id = $this->session->userdata('adminid'); 
    $jobs = $this->Admin_model->get_all_partner_jobs($banker_id); 
    $data['data1'] = []; //create an empty array 
    foreach($jobs as $item) 
    { 
     $job_id = $item['job_id']; 
     $uid = $item['uid']; 
     $campaign_id = $item['campaign_id']; 
     $campaign_name = $this->Admin_model->get_campaign_name_by_id($campaign_id); 
     $offer_id = $this->Admin_model->get_offer_id($campaign_id,$uid); //var_dump($offer_id); 
     $buyer_receipt = $this->Admin_model->get_buyer_receipt_by_offer_id($offer_id); //var_dump($buyer_receipt); 

     $data['data1'][] = array(
     "job_id" => $job_id,  
     "uid" => $uid, 
     "campaign_id" => $campaign_id, 
     "campaign_name" => $campaign_name, 
     "offer_id" => $offer_id, 
     "buyer_receipt" => $buyer_receipt, 
     ); //assign value to array 

    } 

    $data['page_title'] = 'Banker Offers list - PinkStar'; 
    $this->load->view('admin/banker_offers_list',$data); 
} 

而在视野中只改变这么多代码: -

<?php 
if(count($data['data1']) > 0){ 
foreach ($data['data1'] as $d){ 
    $job_id = $d['job_id']; 
    $campaign_id = $d["campaign_id"]; 
    $buyer_receipt = $d['buyer_receipt']; 
?> 
相关问题