2015-08-11 5 views
3

Я хочу показать данные пользователя вместе с профилем pic на его странице профиля. Мне удалось отображать профиль pic, но у меня есть некоторые сомнения в моем уме, как я могу показать другие данные пользователя на той же странице, чтобы я сделал другой контроллер и модель для этого или одного контроллера и модели достаточно для выполнения задачи. Если мы создадим еще одну модель и контроллер, то это возможно или хорошая возможность возвращать разные данные от контроллера profile_pic и другие от контроллера user_data до того же вида.Просмотр данных пользователя вместе с профилем pic в codeigniter?

//My profile_pic controller 
public function index() { 
      if($this->session->userdata('is_login')) { 


     $session_data = $this->session->userdata('sessiondata'); 
     $id = $session_data['user_id']; 
     $this->load->model('Display_profilepicture'); 
     $data = $this->Display_profilepicture->getImage(); 
     //var_dump($data); 
     print_r($data); 
     //echo '<br>'; 
     $img = base_url().'upload/thumbs/'.$data; 
     //echo $img.'<br>'; 
     $data = array('img' => $img); 
     //print_r($data); 
     //$this->load->view('header'); 
     //$this->load->view("my_profile", $data); 
    // $data=array('profile_picture'=>$img); 
     //print_r($data['profile_picture']); 
     //echo '<br>'; 
     //header("Content-type: image/jpg"); 
     //$this->load->view('header'); 
     //$this->load->view('my_profile',array('data'=>$data)); 



     } 

//my model 
function get_user_data(){ 
$session_data = $this->session->userdata('sessiondata'); 
$id = $session_data['user_id']; 
$this->db->select("*"); 
$this->db->from('tbl_usrs'); 
$this->db->where('user_id', $id); 
$query = $this->db->get(); 
if($query->num_rows()==0) 
echo("Picture not found!"); 
else 
$data = $query->result(); 
return $data=$query->result(); 
//print_r($data['profile_picture']); 
} 
function getImage(){ 
$session_data = $this->session->userdata('sessiondata'); 
$id = $session_data['user_id']; 
$this->db->select("*"); 
$this->db->from('tbl_usrs'); 
$this->db->where('user_id', $id); 
$query = $this->db->get(); 
if($query->num_rows()==0) 
echo("Picture not found!"); 
else 
$data = $query->row_array(); 
return $data['profile_picture']; 
//print_r($data['profile_picture']); 
} 

это данные, возвращаемые с модели и результаты print_r ($ data);

Array ([user_id] => 26 [first_name] => aman [last_name] => [username] => aman123 [sex] => [dob] => 0000-00-00 [phone] => 0 [email] => [email protected] [visited_country] => 0 [about_me] => [help_others] => [fav_activity] => [bed_offer] => 0 [couch_country] => 0 [couch_state] => 0 [couch_city] => 0 [couch_addline1] => [couch_addline2] => [profile_picture] => db421e40f1c1852d8cc0acc93d7bb963.jpg [picture1] => [picture2] => [picture3] => [picture4] => [picture5] => [country] => [state] => [city] => [addline1] => [addline2] => [zip] => 0 [created_on] => 0000-00-00 [password] => 123123 [modified_on] => 0000-00-00 [active] => [user_type] => 0 [ip] => ::1) 

, если внести изменения в моем модели установить возвратный $ данных вместо $ данных [ «profile_picture»] затем массив данных возвращаемые, но я получаю массив ошибки преобразования строки из-за линии в контроллере «$ IMG = base_url() 'Upload/THUMBS /'.$ данных;.» так что я просто wana спросить, что лучший способ выполнить задачу и как? Некоторая помощь кода также принимается ??

+0

может кто-нибудь помочь .... –

ответ

0

В контроллере

function index() 
{ 
    if ($this->session->userdata('is_login')) 
    { 

     $session_data = $this->session->userdata('sessiondata'); 
     $id = $session_data['user_id']; 
     $this->load->model('Display_profilepicture'); 
     $result = $this->Model_name->get_user_data($id); 

     if($result==0) 
     { 
      echo 'No user Found'; 
     } 
     else 
     { 
      $data['user']=$result; 
      $this->load->view('header'); 
      $this->load->view("my_profile", $data); 
     } 
    } 
} 

В модели

function get_user_data($id) 
{ 
    $query = $this->db->query("SELECT * FROM tbl_usrs WHERE user_id='$id'"); 
    $result = $query->result_array(); 
    $count = count($result); 

    if(empty($count) || $count > 1) 
    { 
     $log = 0; 
     return $log ; 
    } 
    else 
    { 
     return $result; 
    } 
} 

В видовом

foreach ($user as $new_user) 
{ 
    ?> 
    <h4>Your name: <?php echo $new_user['first_name'] ?> </h4> 
    <img src="<?php echo base_url()?>upload/thumbs/<?php echo $new_user['profile_picture'] ?>" alt="<?php echo $new_user['first_name'] ?>"> 
    <p>E-Mail: <?php echo $new_user['[email protected]'] ?></p> 
<?php 
} 
+1

thnku Abdulla жизнь Savier ... она работала –