/ / Passando URL da imagem para visualizar do controlador - php, image, codeigniter

Transmitir URL da imagem para visualizar do controlador - php, image, codeigniter

Atualmente estou preso a uma situação em que não consigo passar a linha certa para fazer a imagem aparecer, é o que tenho até agora:

Controlador

    // Get image URL and alternate text
$image_filename = "<?php echo base_url("assets/imgs/"". $code ."".png"); ?>";
$page_data["image_filename"] = $image_filename;
$image_alt = "Image: " . $code . ".png";
$page_data["image_alt"] = $image_alt;

$this->load->view("common/header");
$this->load->view("top_nav");
$this->load->view("shop_viewprod", $page_data);
$this->load->view("common/footer");
}

Eu tenho que encontrar a imagem para o produto selecionado é por isso que eu tenho que usar a variável $ code, porque ela sempre mudará e é como eu obtenho o código para o item atual selecionado.

E então a vista

    <img src="/images/<?php echo $image_filename; ?>" alt="<?php echo $image_alt; ?>" />

O caminho para a imagem é:

assetsimgsname.png

A coisa é, se eu usar isso na visão, ele encontra a imagem

   <img src="/images/<?php echo base_url("assets/imgs/fg700s.png"); ?>  " alt="<?php echo $image_alt; ?>" />

Só para mostrar os dois lado a lado no código

    <img src="/images/<?php echo $image_filename; ?>" alt="<?php echo $image_alt; ?>" />
<img src="/images/<?php echo base_url("assets/imgs/fg700s.png"); ?> " alt="<?php echo $image_alt; ?>" />

e o resultado:Resultado

Então eu acho que é a maneira que eu faço a variável image_filename e como eu uso na visão, mas eu não consigo entender o que estou perdendo?

Alguém pode me ajudar a resolver isso por favor?

Respostas:

0 para resposta № 1

Você não está passando a (s) variável (s) para a visão.

Quando você carrega sua visão, você está passando uma variável, provavelmente $data, ao $this->load->view() funcionar como o segundo parâmetro.

É provavelmente uma matriz.

Você deve definir uma chave como $data["image_filename"] = base_url[...]; antes carregando a vista.


0 para resposta № 2

Então eu brinquei mais e pensei nisso:

No controlador:

    $page_data["code"] = $code;
$image_alt = "Image: " . $code . ".png";
$page_data["image_alt"] = $image_alt;

Na vista

    <img src="/images/<?php echo base_url("assets/imgs/".$code.".png"); ?>" alt="<?php echo $image_alt; ?>" />

Funciona como um encanto.