codeigniter Tutoriel
Démarrer avec codeigniter
Recherche…
Remarques
CodeIgniter est un framework MVC écrit dans et pour PHP.
Il est léger comparé aux autres frameworks MVC, au prix de moins de fonctionnalités, par exemple, il n’ya pas de système d’authentification intégré pouvant faire partie d’autres frameworks.
CodeIgniter est un bon choix de frameworks pour ceux qui commencent avec MVC car il ne force aucune norme particulière pour la dénomination et la structure du code; mais il convient également aux projets de grande envergure pour lesquels une large gamme de fonctionnalités contenues dans d’autres frameworks peut ne pas être nécessaire.
Versions
Version | Date de sortie |
---|---|
Version Bêta 1.0 | 2006-02-28 |
Version 2.0.0 | 2011-01-28 |
Version 2.2.0 | 2014-06-02 |
Version 3.0.0 | 2015-03-30 |
Version 3.1.3 | 2017-01-09 |
La version est 3.1.4 | 2017-03-20 |
La version est 3.1.5 | 2017-06-19 |
Installation et configuration
Environnement Windows
- Installer XAMPP ou WAMP
- Téléchargez et décompressez le package depuis Codeigniter.com
- Extraire tout le document dans l'espace du serveur (répertoire htdocs ou www)
Environnement Mac
- Installez MAMP
- Téléchargez et décompressez le package depuis Codeigniter.com
- Extraire tout le document dans l'espace serveur (htdocs)
Environnement Linux
- Téléchargez et décompressez le package depuis Codeigniter.com
- Placez le dossier extrait dans / var / www (dans WAMP) ou xampp / htdocs (XAMPP)
GitHub
git clone https://github.com/bcit-ci/CodeIgniter.git
Si vous suivez le système correctement, vous obtiendrez l'écran ci-dessous.
URL de base
- Aller à l'
application/config/config.php
- Définir l'URL de base sous la forme
$config['base_url'] = 'http://localhost/path/to/folder';
Supprimer index.php
de l'URL
Configuration d'Apache |
---|
aller à la racine
créer un fichier htaccess
Ajouter le code ci-dessous à l'intérieur
RewriteEngine on RewriteCond $1 !^(index\.php|assets|image|resources|robots\.txt) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L,QSA]
Remarque: le code .htaccess varie selon le serveur d'hébergement. Dans certains serveurs d'hébergement (par exemple: Godaddy), vous devez utiliser un serveur supplémentaire ?
dans la dernière ligne du code ci-dessus. La ligne suivante sera remplacée par la dernière ligne dans le cas applicable:
RewriteRule ^(.*)$ index.php?/$1 [L,QSA]
Configuration Nginx |
---|
Ouvrir le fichier de configuration nginx (par défaut:
/etc/nginx/sites-available/default
)Ajouter le code ci-dessous à l'intérieur
server { server_name domain.tld; root /path-to-codeigniter-folder; //you codeigniter path index index.html index.php; # set expiration of assets to MAX for caching location ~* \.(ico|css|js|gif|jpe?g|png)(\?[0-9]+)?$ { expires max; log_not_found off; } location / { # Check if a file or directory index file exists, else route it to index.php. try_files $uri $uri/ /index.php; } location ~* \.php$ { fastcgi_pass 127.0.0.1:9000; include fastcgi.conf; } }
Configuration de la base de données
- Aller à l'
application/config/database.php
- Définissez les variables de configuration suivantes.
- Hôte
- Nom d'utilisateur
- Mot de passe
- Nom de la base de données
- Port
Définir le contrôleur par défaut
- Aller à l'
application/config/routes.php
- définissez la valeur de la variable de configuration suivante avec le nom de votre contrôleur.
- default_controller
AutoLoad Library And Helper
- Aller à l'
application/config/autoload.php
- set Valeur
$autoload['libraries'] = array('database', 'session');
comme$autoload['libraries'] = array('database', 'session');
- set Helper value comme
$autoload['helper'] = array('url', 'file', 'form', 'html', 'text');
Exécuter plusieurs applications sur un système CI
Codeigniter peut être configuré pour exécuter plusieurs projets sans dupliquer les fichiers core CI.
C'est possible en divisant le côté de l'application CI. Par exemple , nous allons prendre projet de site Web, qui contient front-end
et back-end
système de gestion de contenu des applications (CMS). Dans ce cas, la structure du dossier CI sera comme suit:
Structure du dossier:
├── Codeigniter
│ ├── applications
│ │ ├─ front-end
│ │ │ ├── views
│ │ │ ├── models
│ │ │ ├── controllers
│ │ │ ├── config
│ │ │ └── ...
│ │ ├─ back-end
│ │ │ ├── views
│ │ │ ├── models
│ │ │ ├── controllers
│ │ │ ├── config
│ │ │ └── ...
│ │ │
│ ├── system
│ │ ├── core
│ │ ├── database
│ │ ├── helpers
│ │ └── ...
│ │
│ ├── index.php
└ └── backend.php
Dans le dossier des applications
, nous avons créé deux dossiers: front-end
et back-end
et copié tout le contenu par défaut des applications
sous ces deux dossiers.
Nous avons également dupliqué le fichier index.php
sous le dossier racine en tant que backend.php
Ensuite, configurez CI
pour qu'il fonctionne avec ces deux instances d'application.
Configuration du code :
Ouvrez les fichiers index.php et backend.php et mettez à jour application_folder
confg:
//index.php
$application_folder = 'applications/front-end';
//backend.php
$application_folder = 'applications/back-end';
Après la configuration ci-dessus, CI est prêt à exécuter deux applications sous un système CI:
La demande sur
example.com/Codeigniter/index.php
ouvrirafront-end
applicationfront-end
Demande sur
example.com/Codeigniter/backend.php
va ouvrir l'applicationback-end
Augmentez la sécurité en masquant l'emplacement de vos fichiers CodeIgniter
Dans le CodeIgniter, il y a deux répertoires principaux à prendre en compte: système et application . Le dossier système contient les entrailles principales de CodeIgniter. Le dossier de l'application contiendra tout le code spécifique à votre application, y compris les modèles, contrôleurs, vues et autres bibliothèques pertinentes.
Selon les instructions d'installation de CodeIgniter, dans l'intérêt de la sécurisation de votre application, le dossier du système et celui de l'application doivent être placés au-dessus de la racine Web afin qu'ils ne soient pas directement accessibles via un navigateur. Par défaut, les fichiers .htaccess sont inclus dans chaque dossier pour empêcher l'accès direct, mais il est préférable de les supprimer complètement de l'accès public si la configuration du serveur Web change ou ne respecte pas le .htaccess.
├── CodeIgniter
│ ├── application
│ ├── system
│ ├── wwwroot
│ │ ├── index.php
Après avoir déplacé les dossiers système et application, ouvrez le fichier principal index.php
et définissez les $system_path
, $application_folder
, de préférence avec un chemin complet, par exemple ' /www/MyUser/system'
. Cependant, les chemins relatifs doivent fonctionner.
Pour Linux / Apache:
$application_folder = './application';
$system_path = './system';
Pour Windows / IIS:
$application_folder = '../application/';
$system_path = '../system/';