Просмотр данных пользователя вместе с аватаркой в ​​codeigniter?

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

//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 )

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

3

Решение

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

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
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]