/ / Passer l'URL de l'image à afficher à partir du contrôleur - php, image, codeigniter

Passer l'URL de l'image à afficher depuis le contrôleur - php, image, codeigniter

Je suis actuellement coincé dans une situation où je ne peux pas obtenir la bonne ligne à traverser pour faire apparaître l'image, c'est ce que j'ai jusqu'à présent:

Manette

    // 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");
}

Je dois trouver l’image du produit sélectionné expliquant pourquoi je dois utiliser la variable $ code, car elle changera toujours, et c’est ainsi que je récupère le code de l’élément sélectionné.

Et puis la vue

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

Le chemin d'accès à l'image est:

assetsimgsname.png

Le problème, c’est que si je l’utilise dans la vue, il trouve l’image

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

Juste pour vous montrer les deux côte à côte dans le code

    <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; ?>" />

et le résultat:Résultat

Donc, je pense que c'est la façon dont je crée la variable image_filename et comment je l'utilise dans la vue, mais je ne comprends pas ce que je manque?

Quelqu'un peut-il m'aider à résoudre ceci s'il vous plaît?

Réponses:

0 pour la réponse № 1

Vous ne transmettez pas la ou les variables à la vue.

Lorsque vous chargez votre vue, vous transmettez une variable, probablement $data, au $this->load->view() fonctionner comme seconde paramètre.

C'est probablement un tableau.

Vous devriez définir une clé comme $data["image_filename"] = base_url[...]; avant chargement de la vue.


0 pour la réponse № 2

Alors, j'ai joué avec ça encore plus et j'ai trouvé ça:

Dans le contrôleur:

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

Dans la vue

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

Fonctionne comme un charme.