CodeIgniter - manière correcte de créer un lien vers une autre page dans une vue

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

Est-il une fonction pour cela ou est-ce simplement l'habitude sur

Cheers,

26
demandé sur bostaf 2011-03-05 19:42:03

5 réponses

je suppose que vous voulez dire "interne" dans votre application.

vous pouvez créer votre propre <a> balise 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 le helper URL de cette façon pour générer un <a> la balise

anchor(uri segments, text, attributes)

... utiliser...

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

et qui va générer

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

Pour la plus commentée de la question

j'utiliserais mon premier exemple

...

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

pour les images (et autres actifs) Je ne mettrais pas le chemin du fichier dans le php, je ferais juste écho à base_url() et puis j'ajouterais le chemin normalement.

64
répondu jondavidjohn 2011-03-05 17:00:02

Le meilleur moyen est d'utiliser le code suivant:

<a href="<?php echo base_url() ?>directory_name/filename.php">Link</a>
1
répondu Ashish Bafna 2015-10-19 11:32:24

Vous pouvez également utiliser PHP short tag pour le rendre plus court. voici un exemple

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

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

1
répondu winnie damayo 2017-06-23 16:46:31
<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
répondu jareenamol joy 2017-01-02 06:22:10

La meilleure et la plus facile façon est d'utiliser l'étiquette 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' => '')); 
?>

Consulter https://www.codeigniter.com/user_guide/helpers/url_helper.html pour plus de détails

cela va sûrement marcher.

0
répondu Amaan Iqbal 2017-06-22 23:02:18