Dans cette quatrième partie du cours, nous allons apprendre à créer des pages.
Bonjour à tous ! Ce dimanche nous allons apprendre à créer des pages : un contrôleur et deux vues 🙂
Configurer la route
On va donc ajouter des pages. Pour cela, il faut dire au site quelle controleur il doit charger en premier. Allez dans application/config/routes.php
[php]
$route[‘default_controller’] = ‘welcome’;
$route[‘404_override’] = »;
[/php]
default_controller correspond au contrôleur qui sera appelé lorsqu’un utilisateur affichera votre site.
C’est à vous de choisir le nom du contrôleur, en sachant que si vous créez d’autres pages dans ce contrôleur, le nom du contrôleur apparaîtra dans l’adresse.
Exemple, dans le contrôleur « index », je mets la page d’index du site et une page « contact » :
L’URL de ma page index sera : https://127.0.0.1/tuto_codeigniter/
L’URL de ma page contact sera : https://127.0.0.1/tuto_codeigniter/index/contact
Pour le cours, je vais quand même appeler mon contrôleur « index ». Remplacez donc « welcome » par « index » dans le fichier routes.php puis sauvegardez et vous pouvez fermer le fichier.
Avant d’aller plus loin, il faut créer un fichier htaccess et le placer à la racine de votre site, près de votre index.php et de vos dossiers application et system :
Cliquez pour afficher le contenu du HTACCESS
Il servira pour l’URL rewriting. Nous pouvons maintenant continuer 🙂
Créer un contrôleur
Créez un nouveau fichier, sauvegardez-le dans application/controllers et nommez le index.php Dans ce fichier, ajoutez ce code :
[php]
<?php if ( ! defined(‘BASEPATH’)) exit(‘No direct script access allowed’);
class Index extends CI_Controller {
public function __construct()
{
// Obligatoire
parent::__construct();
}
public function index()
{
$this->load->view(‘index’);
}
}
[/php]
Petite explication du code: La première ligne est une simple protection qui affichera un message d’erreur si quelqu’un tente d’afficher le fichier contrôleur. Ensuite, vous créez une extension de la classe CI_Controller (pour simplifier, cela indiquera que vous créez un contrôleur). Et vous créez le constructeur (ne l’oubliez pas, sinon cela ne fonctionnera pas).
Exemple : Le contrôleur « film » contient les méthodes « index », « liste », « ajouter ».
Si vous tapez, dans l’URL www.monsite.com/film/ajouter votre contrôleur va charger la méthode « ajouter ».
De même, si vous tapez www.monsite.com/film/liste, votre contrôleur va charger la méthode « liste ».
Par contre, si vous tapez www.monsite.com/film/, c’est la méthode « index » qui sera chargée. Maintenant, on va créer la vue qui sera appelée par le contrôleur
Créer une vue
[html]
<h1>Ceci est mon index!</h1>;
Voici la première ligne de texte de votre vue
Page chargée en <strong>{elapsed_time}</strong> secondes
[/html]
Maintenant, si je charge la page https://127.0.0.1/tuto_codeigniter/, vous obtiendrez ceci (voir l’illustration 1) :
Félicitations ! Vous avez créé votre première page ! 🙂 Imaginons que vous souhaitiez créer la page « contact » sur le même contrôleur, comment allez-vous vous y prendre ? Tentez de faire l’exercice. Indice : Vous devez créer une vue et modifier le contrôleur. Vous avez terminé l’exercice ?
Afficher la correction
[php]
public function contact() { $this->load->view(‘contact’); }
[/php]
Et enfin dans le dossier view, vous devez juste créer un fichier contact.php, ou du nom que vous désirez, tant qu’il se retrouve dans la méthode.
[html] <h1>Contact</h1> Vous trouverez ici les informations pour me contacter [/html]
Et le tour est joué ! 🙂 Si vous rencontrez un problème, n’hésitez pas à poser des questions.
Allez, je vous ai assez fait travailler pour aujourd’hui. N’hésitez pas à vous amuser à créer d’autres pages, d’autres contrôleurs.
À la semaine prochaine pour la suite ! Et attendez-vous à du costaud ! 😉 Et comme à l’habitude, n’hésitez pas à poser vos questions ou faire des remarques.
Bonjour, tout d’abord merci, vos tutos sont géniaux !
Les avez vous abandonnés ?
Bonjour,
Merci.
Je reste un peu sur ma faim ;o)
A quand la suite ??