2017-05-03 9 views
0

2 개의 필드 (proxmox_id, proxmox_data)가있는 테이블 (tb_proxmox)이 있습니다. 필드에서 내 기록 proxmox_data (이 더미 기록) 내 컨트롤러에서메시지 : 잘못된 문자열 오프셋 (codeigniter 및 mysql을 사용하여 JSON을 디코딩)

{"ip0_proxmox":"31231","ip1_proxmox":"31312313","ip2_proxmox":"","nama_proxmox":"31","port_proxmox":"3131","user_proxmox":"","pwd_proxmox":"","type_proxmox":"","ram_proxmox":"","storage_proxmox":""} 

내 기능

$data = array(
     'ambil_data' => $this->M_proxmox->tampilData('tb_proxmox'), 
     );  

내보기

에서 내 모델에서 내 기능 (M_proxmox)

public function tampilData($table){ 
    return $this->db->get($table)->result(); 
    } 

   <tbody> 
       <?php 
       $no = 1; 
       foreach ($ambil_data as $row) { 
       $datas = json_decode($row->proxmox_data,true); 
       foreach($datas as $datum){ 
       ?> 
       <tr> 
        <td><?php echo $no++ ;?></td> 
        <td><?php echo $row->proxmox_id; ?></td> 
        <td><?php echo $datum['ip1_proxmox'];?></td> 

        <td><a href="#" class="fa fa-pencil"></a><a href="#" class="fa fa-remove"></a></td> 
       </tr> 
       </tbody> 
       <?php 
        } 
       } 
       ?> 

난 당신이 디코딩 JSON을 반복하고 $datum 변수는 값이 아닌 키를 포함하고 있기 때문에 당신은이 오류가있어이 오류 불법 문자열 오프셋 'ip1_proxmox'

답변

0

을 얻었다. 나는 또한 </tbody> 외부 foreach는 이동

<tbody> 
<?php 
    $no = 1; 
    foreach ($ambil_data as $row) { 
     $datas = json_decode($row->proxmox_data,true); 
?> 
    <tr> 
     <td><?php echo $no++ ;?></td> 
     <td><?php echo $row->proxmox_id; ?></td> 
     <td><?php echo $datas['ip1_proxmox'];?></td> 

     <td><a href="#" class="fa fa-pencil"></a><a href="#" class="fa fa-remove"></a></td> 
    </tr> 
<?php 
    } 
?> 
</tbody> 

: 당신이 JSON 데이터 이런 식으로 얻고 싶은 경우에

, 당신은 당신의보기를 변경해야합니다.

+0

네가 맞아! 고맙습니다. 내가 봤어요 [수락 대답] (http://stackoverflow.com/questions/7462250/php-json-decode-from-database) 그 2 foreach를 사용하여 –