web-dev-qa-db-fra.com

CodeIgniter - Façon correcte de créer un lien vers une autre page dans une vue

Je me demandais si quelqu'un pourrait me dire la bonne façon de créer un lien vers une autre page à partir d'une vue.

Y at-il une fonction pour ceci ou est-ce juste l'habituel à propos de

À votre santé,

27
Cecil

Je suppose que vous voulez dire "en interne" dans votre application.

vous pouvez créer votre propre balise <a> et insérer une URL dans le href comme ceci

<a href="<?php echo site_url('controller/function/uri') ?>">Link</a>

OU vous pouvez utiliser l’assistant d’URL de cette manière pour générer une balise <a>

anchor(uri segments, text, attributes)

Alors ... pour l'utiliser ...

<?php echo anchor('controller/function/uri', 'Link', 'class="link-class"') ?>

et cela va générer

<a href="http://domain.com/index.php/controller/function/uri" class="link-class">Link</a>

Pour la question supplémentaire commentée

Je voudrais utiliser mon premier exemple

alors...

<a href="<?php echo site_url('controller/function') ?>"><img src="<?php echo base_url() ?>img/path/file.jpg" /></a>

pour les images (et autres éléments), je ne mettrais pas le chemin du fichier dans le php, je ferais simplement écho à la base_url (), puis ajouterais le chemin normalement.

65
jondavidjohn

vous pouvez également utiliser la balise courte PHP pour la raccourcir. voici un exemple

<a href="<?= site_url('controller/function'); ?>Contacts</a>

ou utilisez la fonction d'ancrage intégrée de CI.

1
winnie damayo

Le meilleur moyen est d'utiliser le code suivant:

<a href="<?php echo base_url() ?>directory_name/filename.php">Link</a>
1
Ashish Bafna
<a href="<?php echo site_url('controller/function'); ?>Compose</a>

<a href="<?php echo site_url('controller/function'); ?>Inbox</a>

<a href="<?php echo site_url('controller/function'); ?>Outbox</a>

<a href="<?php echo site_url('controller/function'); ?>logout</a>

<a href="<?php echo site_url('controller/function'); ?>logout</a>
0
jareenamol joy

La meilleure et la plus simple consiste à utiliser une balise d'ancrage dans CodeIgniter, comme par exemple.

<?php 
    $this->load->helper('url'); 
    echo anchor('name_of_controller_file/function_name_if_any', 'Sign Out', array('class' => '', 'id' => '')); 
?>

Référez-vous à https://www.codeigniter.com/user_guide/helpers/url_helper.html pour plus de détails

Cela fonctionnera sûrement.

0
Amaan Iqbal