JSN ImageShow - Joomla 1.5 extension (component, module) by JoomlaShine.com
Le PHP Convertir en PDF Version imprimable Suggérer par mail

Le PHP : Installation & Bases

 PHP est un langage complémentaire au HTML, permettant de créer des pages Web dynamiques, par exemple en relation avec une base de données. Dans ce tutorial vous apprendrez comment installer un serveur Apache et PHP sur votre ordinateur, puis les principes de base de PHP.

Introduction : PHP, 
 
Le PHP est un langage serveur (c'est à dire exécuté sur le serveur, et non sur l'ordinateur du client), qui a pour but, à la base, d'obtenir des pages web dynamiques. Un de ses principaux avantages est le fait d'être basé sur le même modèle économique que Linux, c'est à dire gratuit pour l'utilisateur.

Et il ne faut pas croire qu'il est moins bien parce qu'il est gratuit ! Au contraire, il concurrence ASP, ColdFusion, Perl, voire encore Java Server Pages.

C'est ainsi devenu un des standards du développement web, grâce en particulier à son association extrêmement simple avec la base de donnée MySQL. Le duo Php-MySQL est retrouvé sur de nombreux sites, et est toujours en plein développement.

Maintenant, Php est même utilisé dans des applications autonomes, sous Windows ou Unix, n'ayant plus de rapport avec le Web. Vous pouvez ainsi vous rendre compte de la puissance et de la simplicité d'utilisation de Php !


Installation de Apache & PHP >> Windows

Si vous voulez créer un site utilisant du langage PHP, vous avez deux options :

- Créer votre site sur votre ordinateur, en testant vos scripts php localement, puis le mettre en ligne

- Ou envoyer directement vos scripts php sur votre hébergeurs, pour voir en ligne le résultat.

Il va sans dire que la première solution est nettement plus simple à l'utilisation, ne serait-ce que parce qu'elle ne requiert pas de connexions fréquentes.
Mais son inconvénient (il faut bien qu'il y en ait un...) réside dans l'essence même du PHP : c'est un langage côté serveur, c'est à dire exécuté par le serveur et non pas votre navigateur (Internet Explorer, Netscape Navigator, Opera, Mozilla, ...). Il faudra donc installer sur votre PC un serveur http, le plus connu et utilisé étant Apache, ainsi que le logiciel PHP.

Pour cela, commencez par télécharger les dernières versions de Apache et de PHP.

Commencez par installer PHP. Après avoir installé le programme (par exemple dans c:\php), il faut tout d'abord copier le fichier php.ini-dist dans le répertoire Windows et le renommer en php.ini
Ensuite, il suffit de l'éditer (l'ouvrir avec Notepad ou Wordpad) pour régler les paramètres de PHP.
Il n'y a pas grand chose à changer à la configuration par défaut.
Voici une liste des points utiles (à noter que les ; servent de commentaires) :

  • Dans "Paths and Directories"

Ajouter . (point) dans include_path

Mettre le chemin des fichiers dll (par exemple c:\php\extensions) dans extension_dir
;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;
include_path = .
doc_root =
user_dir =
upload_max_filesize = 2097152
extension_dir = c:\php\extensions
enable_dl = On

  • Dans "Windows Extensions"

Décommenter la ligne des fichiers d'extension que l'on souhaite utiliser en enlevant le point virgule.
Par exemple si vous souhaitez utiliser les fonctions ftp et imap :

;Windows Extensions
; etc..
extension=php_ftp.dll
;extension=php_gettext.dll
;extension=php_ifx.dll
extension=php_imap.dll
; etc..

Remarque : Il ne faut plus charger la dll de mysql pour utiliser MySQL. Cette dll est maintenant intégrée dans PHP4.

  • Dans "[Session]"

Si vous souhaitez utiliser les sessions PHP4, le plus simple est de garder la configuration par défaut, et donc de stocker les sessions dans des fichiers.
Il faut par contre spécifier le chemin du répertoire où seront stockées ces sessions.
Par exemple, vous pouvez créer un répertoire c:\php\sessions.

[Session]
session.save_handler = files ; les sessions sont stockées dans des fichiers
session.save_path = c:\php\sessions
session.use_cookies = 1 ; on utilise des cookies pour transmettre l'identifiant de session
session.name = PHPSESSID
; etc..

Vous pouvez maintenant installer Apache. Exécutez le fichier d'installation, puis allez éditer le fichier httpd.conf qui se trouve dans le répertoire /conf/ du répertoire Apache.
Vous allez ici configurer votre serveur, ses intéractions avec PHP, et divers paramètres.

Rajoutez votre adresse IP à la ligne ServerName (attention, s'il y a un # en début de ligne il faut le supprimer car il désactive la ligne). Si vous voulez uniquement travailler en local (c'est à dire que votre site ne soit pas accessible de l'extérieur, de l'internet, vous devez mettre 127.0.0.1 comme adresse IP.
La ligne commençant par DocumentRoot indique le répertoire racine de votre site. Par défaut il est configuré sur htdocs, mais il est conseillé de changer, pour accéder plus facilement à vos pages.

ServerName 127.0.0.1
DocumentRoot "c:/web"

Puis indiquez les options d'accès à ce répertoire, en mettant :

<Directory "c:/web">
Options All
AllowOverride All
Order allow,deny
Allow from all
</Directory>

Le point suivant est la configuration d'Apache pour qu'il accède à l'interpréteur PHP.

Tout d'abord vous devez définir les extensions des fichiers qui seront interprétés par l'analyseur PHP, avec la directive AddType.
On peut par exemple définir .php, .php3 et .phtml. Rien ne vous empêche de mettre aussi l'extension .html mais sachez que, si vous désirez uniquement y mettre du html, cela ralentit inutilement le serveur.

AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3
AddType application/x-httpd-php .phtml

Ensuite vous devez indiquer à Apache d'utiliser PHP pour ces fichiers.

ScriptAlias /php/ c:/php/
Action application/x-httpd-php /php/php.exe

Lorsque Apache rencontre un fichier de type application/x-httpd-php, il demande donc à c:/php/php.exe de l'analyser.

Pour lancer le serveur, il vous suffit d'exécuter apache.exe.
Démarrer : apache
Relancer : apache -k restart
Fermer : apache -k shutdown
Pour lancer et fermer Apache, il existe un utilitaire de Brian Moon, que je vous conseille vivement d'utiliser. Vous pouvez le télécharger ici (code source inclus).

Pour vérifier l'installation, lancez Apache et rendez-vous, grâce à votre navigateur internet, sur la page http://127.0.0.1 (ou votre adresse IP). Vous devriez voir apparaître une page "It worked..." ou le listing des fichiers contenus dans le répertoire racine (pas dans le style explorateur windows, le style apache, vous reconnaitrez...)
Et pour vérifier le bon fonctionnement de PHP, créez dans votre répertoire racine (par exemple c:\web\) un fichier texte contenant le texte suivant : <? phpinfo(); ?>
Ouvrez le en tapant http://127.0.0.1/nom_du_fichier.php, vous devriez voir apparaitre plein d'informations sur PHP, Apache, etc.


Quelques fonctions simples

Afin de vous montrer tout de suite à quel point le code PHP peut être inséré facilement dans une page html, voici quelques exemples :

  • Afficher la date du jour

<html>
<body>
<center>Bonjour nous sommes le :
<?
$date = date("d-m-Y");
echo "$date";
?>
</center>
</body>
</html>

On peut voir ici une première utilisation de code PHP : il est inséré au milieu du code html, entre des balises <? et ?>. A noter que l'on peut aussi utiliser les balises <?php ?> pour indiquer du code Php.

D'autre part, on a utilisé ici une variable php : elles sont repérées par un $ devant leur nom. Si vous enlevez le $ du code echo "$date"; , alors ce ne sera pas la date qui sera affichée (le contenu de la variable $date), mais le texte date.

  • Inclure le contenu d'un fichier

La fonction include permet d'inclure dans une page html ou php, une autre page web, html ou php, voire autre.
Son utilisation est extrêmement simple, c'est include('nom_et_chemin_de_la_page_a_include.php');
Par exemple :

<? include("copyright.txt"); ?>

  • Récupérer l'adresse IP du client

L'adresse IP est stockée en permanence dans une variable dite d'environnement, $REMOTE_ADDR
En insérant le code suivant :

<?
echo "$REMOTE_ADDR";
?>

Vous affichez au client son adresse IP.


Utilisation d'un formulaire

En PHP, récupérer les variables transmises par un formulaire est un jeu d'enfant.
Créons un exemple de formulaire :

Exemple : Que pensez-vous de ce site ?

Votre nom :

Commentaire :

 

Le code qui a été inséré est le suivant :

<form method="post" action="phprecupform.php" target="_blank">
<p>Exemple : Que pensez vous de ce site ?</p>
<p>Votre nom :<br>
<input type="text" name="nom" size="40"><br>
Commentaire :<br>
<textarea name="comment" cols="40" rows="3"></textarea>
</p>
<input type="submit" name="Submit" value="Envoyer">
</form>

Rien de bien compliqué pour le moment, c'est juste du code HTML.
On utilise la méthode POST (mais la méthode GET marche aussi, elle est simplement moins transparente pour l'utilisateur) et on met le nom du fichier PHP que l'on veut appeler dans "action". Par contre, donnez un nom explicite aux champs du formulaire, puisque PHP utilisera ces noms pour les variables.

Une fois le formulaire envoyé, il faut récupérer les informations transmises.
Le code du fichier script est :

<html>
<body bgcolor="#FFFFFF">
<p align="center"><font face="Arial, Helvetica, sans-serif"><b><font size="+1">Votre nom est : <? echo $nom; ?> </font></b> </font></p>
<p align="center"><font face="Arial, Helvetica, sans-serif">Vous avez entré le commentaire suivant : <? echo $comment; ?> </font> </p>
</body>
</html>

L'instruction echo permet d'afficher le texte voulu. On peut évidemment y mettre des balises html. Il faut alors ajouter un \ devant les " si il y en a.
Pour récupérer les variables transmises, il faut insérer un $ devant le nom de la variable du formulaire.

On peut compléter le script, en rajoutant un test sur les champs du formulaire. Si l'utilisateur ne remplit pas les champs, on affiche un message d'erreur.
Dans le même genre, il vaut mieux utiliser la fonction htmlentities pour afficher les caractères spéciaux du texte entré sous forme html.

<html>
<body>
<?
if($nom && $texte){ // si les champs sont remplis
echo "<h4>Merci ".htmlentities($nom)."</h4>";
echo "<p>Votre commentaire : ".htmlentities($texte)."</p>";
}else{
echo "<h4>Erreur !</h4>";
echo "<p>Vous devez remplir correctement tous les champs</p>";
}
?>
</body>
</html>


Les variables d'environnement

Les variables d'environnement sont des variables disponibles en permanence quand vous utilisez un script PHP. Elles sont caractérisées par un nom systématiquement en majuscules.
Ces données sont des constantes qui contiennent des informations sur le client, son navigateur, le script appelé, etc...

Pour les utiliser, vous avez deux méthodes possibles :
- appeler la variable grâce à son nom, précédé bien évidemment d'un $
- utiliser la fonction getenv(), qui accepte en argument le nom de la variable d'environnement que vous voulez.

Vous pouvez par ailleurs fixer la valeur d'une variable d'environnement en utilisant la commmande putenv() : putenv("VARIABLE=nouvelle_valeur")

Liste (non exhaustive) des variables d'environnement :

Nom de la variable Description
Valeur actuelle
DOCUMENT_ROOT Racine du serveur
/home/astuce la/www
HTTP_ACCEPT_LANGUAGE Langage accepté par le navigateur client
fr
HTTP_HOST Nom de domaine du serveur
www.cyberomania.net
HTTP_USER_AGENT Navigateur (et système) et client
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
REMOTE_ADDR Adresse IP du client
81.220.231.xx
REMOTE_PORT Port sur lequel la requête http a été envoyée au serveur
1752
SERVER_ADDR Adresse IP du serveur
213.186.33.xx
SERVER_ADMIN Adresse de l'administrateur du serveur
213.186.33.xx
SERVER_NAME Nom local du serveur
www.cyberomania.net
SERVER_SIGNATURE Type de serveur
 
REQUEST_METHOD Méthode d'appel du script
GET
QUERY_STRING Liste des paramètres passés au scripts
dossier=1&rub=web&id=221
REQUEST_URL Chemin du script
 
PATH_INFO Chemin web du script
 
PATH_TRANSLATED Chemin complet du script

 

 

Please Enter New Tags Separated By Comma's
  Or Close

Astuces  Formation informatique  [depannage]  [formation]  [informatique]  [meuse]  [reparations]  [verdun]  achat vente jeux video  adobe logiciel creation site internet  agence creation site internet  agence creation site internet professionnel  agence sitez creation sites internet situee verdun  agence web creation site internet  agence web creation sites internet  aide creation site internet  annuaire creation site internet  asistance  assistance  assistance depannage  assistance formation  assistance informatique  assistance meuse  assistance reparations  assistance verdun  assistant gratuit creation site internet  automatisation informatique  base donnees creation site internet  communication creation site internet  conception creation site internet  creation de site web  creation de site web gratuit  creation site internet  creation site internet administrable  creation site internet ales  creation site internet artisan  creation site internet asp  creation site internet b paca b  creation site internet besancon  creation site internet beziers  creation site internet bretagne  creation site internet charente  creation site internet collectivite locale  creation site internet conception graphique infographie web design region sud oues  creation site internet creation site internet  creation site internet creation site internet creation site internet  creation site internet creation site web publisit  creation site internet dynamique  creation site internet e commerce  creation site internet flash  creation site internet france  creation site internet gratuit  creation site internet hebergement  creation site internet hotel  creation site internet ile france  creation site internet immobilier  creation site internet ligne  creation site internet limites  creation site internet lorraine  creation site internet mariage  creation site internet marseille  creation site internet meuse  creation site internet montpellier  creation site internet nantes  creation site internet paca  creation site internet perpignan  creation site internet php  creation site internet pme  creation site internet pmi  creation site internet professionnel  creation site internet referencement web  creation site internet rouen  creation site internet site web multimedia cortix bordeaux lyon nantes toulouse  creation site internet tarif  creation site internet toulon  creation site internet toulouse  creation site internet toulouse formation internet bureautique creation sites internet  creation site internet typo  creation site internet verdun  creation site web creation site internet intranet hebergement serveur da dia ra fa rencement  creation sites internet  creation sites internet bruxelleswallonie  creation sites internet casino  creation sites internet creation sites internet  creation sites internet creation sites internet creation sites internet  creation sites internet lyon  creation sites internet toulouse  creation sites internet toute france web agency lyon rhone alpes  creation sites internet tpe pme pmi  creation sites internet var  creations site internet  creations sites internet  csid creation sites internet developpement  cybercafe  cyberomania  cyberomania conception creation site internet  cyberomania.net  depanage  depannage  depannage assistance  depannage domicile informatique caen creation sites internet normandie ordinateur  depannage formation  depannage informatique  depannage meuse  depannage reparations  depannage verdun  devis creation site internet  elearning informatique  entreprise creation site internet region lorraine  formation  formation a verdun  formation assistance  formation depannage  formation et reparation informatique in verdun creation site internet en meuse  formation informatique et internet en lorraine  formation informatique internet en lorraine  formation internet  formation internet en meuse  formation internet meuse  formation lorraine  formation lorraine internet