Cours 420-2D7-LL Développement web

*** lundi, 20 avril 2026 --> semaine 12 !!! ***



Semaine 2 - Apache et PHP

Télécharger : Note de cours apache_etudiant.doc

Apache HTTP Server

Un article de Wikipédia, l'encyclopédie libre.

Le logiciel Apache HTTP Server, souvent appelé Apache, est un serveur HTTP produit par la Apache Software Foundation. C'est le serveur HTTP le plus populaire du World Wide Web. C'est un logiciel libre avec un type spécifique de licence, nommée licence Apache.

 

Historique

Apache est apparu en avril 1995. Au début, il s'agissait d'une collection de correctifs et d'additions au serveur NCSA HTTPd 1.3, qui était dans le domaine public et le serveur HTTP alors le plus répandu. De cette origine, de nombreuses personnes affirment que le nom Apache vient de a patchy server, soit « un serveur rafistolé ». Par la suite, Apache a été complètement réécrit, de sorte que, dans la version 2, il ne reste pas de trace de NCSA HTTPd.

Au début, Apache était la seule alternative sérieuse et libre au serveur HTTP de Netscape (iPlanet, maintenant Sun ONE).

 

Pourcentages des serveurs de sites Web en Janvier 2012 par Pingdom:

Serveur

Pourcentage

Apache

64%

IIs de Microsoft

14%

NGinx

13%

GFE de Google (sur le réseau Google)

9%

 

 

https://w3techs.com/technologies/overview/web_server/all (pour 2021)

 

https://w3techs.com/technologies/overview/web_server/all (pour 2025)

 

La version 2 d'Apache possède plusieurs avancées majeures par rapport à la version 1, entre autres le support de plusieurs plateformes, le support de processus légers UNIX, une nouvelle API et le support IPv6.

La fondation Apache (Apache Software Foundation ou ASF) a été créée en 1999 à partir du groupe Apache (Apache Group) à l'origine du serveur en 1995. Depuis, de nombreux autres logiciels utiles au World Wide Web sont développés à côté du serveur HTTP.

Depuis Apache s'est illustré pour devenir le meilleur des serveurs HTTP sur le marché du net.

 

Disponibilité

Apache fonctionne principalement sur les systèmes d'exploitation Unix (GNU/Linux, BSD et UNIX) et Windows. La version Windows n'est considérée comme stable que depuis la version 2 d'Apache. Apache est utilisé par de nombreux produits, dont Websphere d'IBM, ainsi que par Oracle Corporation. Il est également supporté d'une façon ou d'une autre par les outils de développement Borland Delphi et Kylix, ainsi que par des CMS comme Drupal.

 

Fonctionnalités

Apache est conçu pour supporter de nombreux modules lui donnant des fonctionnalités supplémentaires : interprétation du langage Perl, PHP et Python, serveur proxy, Common Gateway Interface, Server Side Includes, réecriture d'URL, négociation de contenu, protocoles de communication additionnels, etc.

Les possibilités de configuration d'Apache sont une fonctionnalité phare. Le principe repose sur une hiérarchie de fichiers de configuration, qui peuvent être gérés indépendamment. C'est notamment utile aux hébergeurs Web qui peuvent ainsi servir les sites de plusieurs clients à l'aide d'un seul serveur HTTP. Pour les clients, cette fonctionnalité est rendue visible par le fichier .htaccess.

Parmi les logiciels aidant la maintenance d'Apache, les fichiers de log peuvent s'analyser à l'aide de nombreux scripts et logiciels libres tels que AWStats [1] ou Webalizer [2]. Plusieurs interfaces graphiques facilitent la configuration du serveur [3].

 

 

 

Module PHP sous Apache  (Programmation PHP)

httpd.conf

#Vide ou presque, ou tout y est inclus!!! (Ouin....pas clair...selon la version et le "package")

 

Dans  apache2/apache2.conf

 

#############################################################Mers############

#  Modifié par Mers   28 janvier 2026

#############################################################Mers############

 

 

#ServerRoot "/etc/apache2"

 

 

# Include module configuration:

IncludeOptional mods-enabled/*.load

IncludeOptional mods-enabled/*.conf

 

# Include list of ports to listen on


Include ports.conf


 

 

Dans  apache2/mods-available/dir.conf

<IfModule mod_dir.c>

############################################################Mers############

# Page qui sera afficher par défaut si ….. aucun fichier n'est spécifié dans l'URL

 

            DirectoryIndex toto.php index.html index.php index.cgi index.pl index.php index.xhtml index.htm

############################################################Mers############

</IfModule>

 

 

 

Dans  apache2/port.conf

 

Listen 80

 

 

 

 

Dans  apache2/conf-available/charset.conf

##########Mers############# enlever le #

AddDefaultCharset UTF-8

 

Quand PHP sera installer…..

 

php8.1.conf

 

</FilesMatch>

# Deny access to files without filename (e.g. '.php')

<FilesMatch "^.ph(p[3457]?|t|tml|ps)$">

    Require all denied

</FilesMatch>

 

php8.1.load

 

# Conflicts: php5

LoadModule php_module /usr/lib/apache2/lib/apache2/modules/libphp8.1.so

 

 

Ensuite …

 

Redémarrer Apache

Et vérifier avec une page web dans votre dossier racine.

 

Dans un terminal :

sudo apache2ctl restart

 

Créer une page index.html et copier la dans votre dossier racine et tester dans votre navigateur avec Localhost. Exemple à

<HTML>

<HEAD>

<TITLE>Salut</TITLE>

</HEAD>

<BODY>

Mon nom est Mers!

</BODY>

</HTML>

 Télécharger : apache2.conf

Télécharger : httpd.conf


Module PHP sous Apache

(Installation et configuration)

Référence: http://fr.php.net/manual/fr/index.php

 

Télécharger : Note de cours Programmation PHP_11.docx

 

Qu'est ce que PHP?

PHP (officiellement, ce sigle est un acronyme récursif pour PHP: Hypertext Preprocessor) est un langage de scripts généraliste et Open Source, spécialement conçu pour le développement d'applications web. Il peut être intégré facilement au HTML.

Réponse simple et claire, mais qu'est-ce que cela veut dire? Un exemple :

<html>
   <head>
       <title>Exemple</title>
   </head>
   <body>

       <?php
       echo "Bonjour, je suis un script PHP!";
       ?>

   </body>
</html>

 

Il est à noter la différence avec les autres scripts CGI écrits dans d'autres langages tels que le Perl ou le C : Au lieu d'écrire un programme avec de nombreuses lignes de commandes afin d'afficher une page HTML, vous écrivez une page HTML avec du code inclus à l'intérieur afin de réaliser une action précise (dans ce cas-là, afficher du texte). Le code PHP est inclus entre une balise de début et une balise de fin qui permettent au serveur web de passer en "mode PHP".

Ce qui distingue PHP des langages de script comme le Javascript est que le code est exécuté sur le serveur. Si vous avez un script similaire sur votre serveur, le client ne reçoit que le résultat du script, sans aucun moyen d'avoir accès au code qui a produit ce résultat. Vous pouvez configurer votre serveur web afin qu'il analyse tous vos fichiers HTML comme des fichiers PHP. Ainsi, il n'y a aucun moyen de distinguer les pages qui sont produites dynamiquement des pages statiques.

Que peut faire PHP?

Tout. PHP est principalement conçu pour servir de langage de script coté serveur, ce qui fait qu'il est capable de réaliser tout ce qu'un script CGI quelconque peut faire, comme collecter des données de formulaire, générer du contenu dynamique, ou gérer des cookies. Mais PHP peut en faire bien plus.

Il y a trois domaines différents où PHP peut s'illustrer.

·        Langage de script coté serveur

·        Langage de programmation en ligne de commande.

·        Écrire des applications clientes graphiques PHP-

PHP est utilisable sur la majorité des systèmes d'exploitation,

Avec PHP vous avez le choix de votre système d'exploitation et de votre serveur web.   Beaucoup de bibliothèques et d'applications d'envergures (incluant la bibliothèque PEAR) ont été écrites en utilisant uniquement du code orienté objet. Avec PHP, vous n'êtes pas limités à la production de code HTML. Les capacités de PHP lui permettent de générer aussi bien des images, des fichiers PDF, des animations Flash (avec l'aide des bibliothèques GD, libswf et Ming), générés à la volée. Une des grandes forces de PHP est le support de nombreuses bases de données (MySQL)

 

Une introduction à PHP

 

Les pages web qui exploitent PHP sont traitées comme des pages HTML standards, et vous pouvez les créer, éditer et effacer tout comme vous le faîte normalement avec des pages HTML classiques.

 

Le nécessaire

Dans ce tutoriel, nous présumons que vous avez un serveur web avec le support PHP activé, et que les fichiers terminés par l'extension .php sont traités par PHP. Sur la plupart des serveurs, c'est la configuration par défaut, mais n'hésitez pas à interroger votre administrateur système en cas de doute. Si votre serveur web supporte PHP, vous n'avez rien à faire. Simplement, créez un dossier, puis créez un fichier texte, avec l'extension .php : le serveur va automatiquement l'exécuter avec PHP. Il n'y a pas de compilation, ou d'installation compliquée. Gardez en tête que les fichiers sont comparables à des fichiers HTML, dans lequel vous allez utiliser des balises magiques, qui feront beaucoup de choses pour vous. Beaucoup d'hébergeurs web proposent PHP mais si votre hébergeur ne le propose pas, lisez la section des liens PHP pour trouver un hébergeur web le proposant.

Supposons que vous souhaitiez économiser du temps en ligne et travailler localement. Dans ce cas, vous devez installer un serveur web comme Apache, et bien sur PHP. Vous souhaiterez aussi installer une base de données comme MySQL.

Votre première page PHP

Créez un fichier appelé bonjour.php dans votre dossier web racine (DOCUMENT_ROOT) avec le contenu suivant :

Exemple: bonjour.php

<html>
 <head>
  <title>Test PHP</title>
 </head>
 <body>
 
<?php echo '<p>Bonjour le monde</p>'; ?>
</body>
</html>

 

Utilisez votre navigateur pour accéder au fichier via votre serveur web, en ajoutant le nom de fichier /bonjour.php. Si vous développez localement, votre URL ressemblera à http://localhost/bonjour.php ou encore http://127.0.0.1/bonjour.php mais cela dépend de la configuration de votre serveur web. Si ceci est configuré correctement, le fichier sera analysé par PHP et le résultat suivant sera affiché :

<html>
 <head>
  <title>Test PHP</title>
 </head>
 <body>
 <p>Bonjour le monde</p>
 </body>

</html>

Ce programme est extrêmement simple et vous n'avez pas besoin de PHP pour créer une page web comme ceci.

Exemple : Récupération des informations du système depuis PHP

<?php phpinfo(); ?>

Trucs pratiques

Réalisons maintenant quelque chose de plus puissant. Nous allons vérifier le type de navigateur que le visiteur de notre site utilise. Pour cela, nous allons accéder aux informations que le navigateur du visiteur nous envoie, lors de sa requête HTTP. Cette information est stockée dans une variable. Les variables sont faciles à repérer, car elles commencent toutes par un signe dollar. La variable qui nous interesse ici est $_SERVER['HTTP_USER_AGENT'].

Note : $_SERVER est une variable spéciale de PHP, qui contient toutes les informations relatives au serveur web. C'est une variable réservée de PHP, et une auto-globale. Reportez-vous aux pages du manuel traitant des Auto-globales (aussi connues sous le nom de super-globales).

520 700+ Interdit Photos, taleaux et images libre de droits - iStock | Sens  interdit, Stop, Danger

Ces variables spéciales ont été introduites en PHP 4.1.0. Auparavant, il fallait utiliser les variables $HTTP_*_VARS, comme $HTTP_SERVER_VARS. Bien qu'obsolètes, ces variables existent toujours. (Voir aussi la note sur l'ancien code.)

 

Pour afficher cette variable, nous pouvons simplement faire :

Exemple : Afficher le contenu d'une variable (élément de tableau)

<?php echo $_SERVER['HTTP_USER_AGENT']; ?>

 

Un résultat possible du script pourra alors être :

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)

 

 

Il y a de nombreux types de variables disponibles en PHP. Dans l'exemple ci-dessus, nous avons affiché un élément de Tableau (Array). Les tableaux peuvent être très utiles.

$_SERVER est juste une variable qui est automatiquement disponible dans votre script. Une liste de toutes les variables qui sont rendues disponibles est fournie dans la section Variables réservées ou vous pouvez aussi en obtenir une liste complète en lisant l'affichage de la fonction phpinfo() utilisée dans l'exemple de la section précédente.

Vous pouvez ajouter plusieurs commandes PHP dans une balise PHP, et créer de petits blocs de code qui réalisent des opérations plus complexes qu'un simple affichage. Par exemple, si nous voulons vérifier que le navigateur est bien de la famille des Internet Explorer, nous pouvons faire cela :


 

Exemple : structures de contrôle et les fonctions

 

<?php
if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !==
FALSE) {
   echo 'Vous utilisez Internet Explorer<br />';
}
?>

 

Le résultat de ce script, si vous utilisez Internet Explorer, sera :

Vous utilisez Internet Explorer<br />

Nous pouvons maintenant progresser et vous montrer comment utiliser le mode PHP, au milieu du code HTML :

Un exemple de résultat obtenu dans ce script est :

<h3>strpos() n'a pas retourné FALSE</h3>

<p>Vous utilisez Internet Explorer</p>

 

Au lieu d'utiliser une commande echo(), pour afficher du texte, vous pouvez utiliser du code HTML pur. Le point important a noter ici et que la logique de programmation est conservée. Seul un des deux blocs HTML sera affiché, suivant le résultat de la fonction strpos(). En d'autres termes, celà dépend si la chaîne MSIE a été trouvée ou non.

 


Considérations générales sur l'installation

Avant d'installer PHP, vous devez savoir ce que vous voulez faire de PHP. Il y a trois cas d'utilisation que vous a décrit la section Que peut faire? :

·        Scripts web

·        Scripts de ligne de commande

·        Application à interface graphique

Téléchargez la version la plus récente de Apache 2.0 et une version appropriée de PHP, tel que décrit ci-dessus. Ce guide rapide couvre les manipulations de base, nécessaires à l'installation de Apache 2.0 et PHP. Pour plus d'informations, lisez la documentation Apache. Les numéros de version sont omis ici, pour s'assurer que les instructions ne soient pas incorrectes. Il faudra donc remplacer les séquences 'NN' avec les valeurs correctes que vous utilisez.

 

 

Le fichier de configuration

 

Dans php.ini du dossier apache2 de php (dans etc)

php.ini dans (etc/php/*.*/apache2/php.ini)

 

Modifier la ligne suivantes :

display_errors = On

 

Pour voir les messages d'erreurs, les avertissements (notice et warning)

....et à quelles lignes

 

 

 


 

Module PHP sous Apache

(Programmation PHP)

 

Télécharger : Note de cours Programmation PHP_22.docx

Référence: http://www.phpfrance.com/tutorials/

 

Le code PHP peut être facilement intégré dans le code html. Pour vous aider à comprendre son fonctionnement, je vous propose quelques exemples :

Afficher la date du jour

date("d-m-Y");

Exemple : Nous sommes le 28-01-2026

 

Inclure le contenu d'un fichier dans une page html

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

 

Date de dernière modification

echo date( "d/m/Y à Hhi", filemtime( "nomfichier.txt" ) );

 

Récupérer son adresse IP

echo $_SERVER["REMOTE_ADDR"];

 

INSTRUCTIONS PHP DE BASE

Les conditions

L'instruction if

elseif.

L'opérateur ternaire

Cette instruction est uniquement une simplification de l'écriture if... else ....

echo ($nombre == 1) ? '$nombre est égal à 1' : '$nombre n'est pas égal à 1';

 

LES VARIABLES D'ENVIRONNEMENT

Les variables d'environnement sont des informations disponibles dans chaque script, sous forme de variables en majuscules.

Liste de ces variables

 

echo "Avec HTTP_USER_AGENT : $HTTP_USER_AGENT<br>";
echo "Avec getenv() : ".getenv("HTTP_USER_AGENT");

getenv

putenv

 

Fonctions utiles

phpinfo();

 

UN FORMULAIRE DE BASE

En PHP, récupérer les variables transmises par un formulaire est un jeu d'enfant.

 

Récupérer les variables transmises

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

$_REQUEST['nom'];

 

LES TABLEAUX  

Comme à son habitude, le PHP propose une riche collection de fonctions pour faciliter le travail avec les tableaux.

Remplir un tableau

$tableau[0] = "a";
$tableau[1] = "b";

Parcourir un tableau

while(list($cle,$val) = each($tableau))

reset($tableau);

Trier un tableau

void sort(tableau nomdutableau); 

void ksort(tableau nomdutableau); 

 

 

LES FICHIERS

La fonction fopen()

La fonction de base est la fonction fopen(). C'est elle qui permet d'ouvrir un fichier, que ce soit pour le lire, le créer, ou y écrire. Sa syntaxe est :

entier fopen(chaine nomdufichier, chaine mode);

 

Exemples :

$fp = fopen("../fichier.txt","r"); //lecture

                                                                                                                   

Création (ou mise à jour) du fichier

La fonction fputs() permet d'écrire dans le fichier.

booléen fputs(entier Etat_du_fichier, chaine Sortie);

 

Lecture du fichier

chaine fgets(entier Etat_du_fichier, entier Longueur);  

 

 

Exemples :

L'instruction switch

Les boucles

L'instruction for

L'instruction while

L'instruction Dowhile

Variables d’environnement

 


Exercice PHP, 1 à 20

Télécharger : exercice PHP 1 a 20.txt

------------------------------------------------------------------------------------------

1
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
    <?php
    $date = date("d-m-Y");
    echo "$date";
    ?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
2
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
    <?php
    include("copyright.txt");
    ?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
3
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
</HEAD>
<BODY>
<CENTER>
    <?php
    echo "Dernière modification le ";
    echo date( "d/m/Y à Hhi", filemtime( "3_modi.php" ) );
    
    echo "<P> Autre methode: ";    
    $jour = date("j",filemtime( "3_modi.php" ));
    $mois = date("n",filemtime( "3_modi.php" ));
    $annee = date("Y",filemtime( "3_modi.php" ));
    $heure = date("Hhi",filemtime( "3_modi.php" ));
    $moisfrancais = array ( 1 => "Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Aout", "Septembre", "Octobre", "Novembre", "Décembre");
    echo ("Dernière modification le ".$jour." ".$moisfrancais[$mois]." ".$annee." à ".$heure); 
    /*l'anti slash devant le h */
    // permet d'afficher h
    # au lieu de l'heure....
    ?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
4
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
    <?php
    echo $_SERVER["REMOTE_ADDR"]; // getenv("REMOTE_ADDR"); pour apache
    ?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------

5
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
    <?php
    if($_REQUEST['temps'] == 'beau'){  //utiliser form1.html
        echo 'Il fait beau';
    }
    ?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
form1.html
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>

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

</BODY>
</HTML>

------------------------------------------------------------------------------------------
6
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
    <?php
    if($_REQUEST['temps'] == 'beau'){    //utilise form2.html
        echo 'Il fait beau';
    }
    else{
    echo 'Il ne fait pas beau';
    }
    ?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
 form2.html
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
6_if_else.php
<form method="post" action="6_if_else.php">
<p>Exemple : Que pensez vous de ce site ?</p>
<p>Votre nom :<br>
<input type="text" name="temps" size="40"><br>
Commentaire :<br>
<textarea name="texte" cols="40" rows="3"></textarea>
</p>
<input type="submit" name="Submit" value="Envoyer">
</form>

</BODY>
</HTML>

------------------------------------------------------------------------------------------
7
<HTML>
<HEAD>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<TITLE> Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
    <?php
    $nombre=2;
    echo ($nombre == 1) ? '$nombre est egal a 1' : "$nombre n'est pas egal a 1";
    ?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
8
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
    <?php
    $nombre=2;        //$nombre="salut";
    switch($nombre)
    {
    case 1:            //case "salut2":
      echo "$nombre est egal a 1";  
    break;
    case 2:
      echo '$nombre est egal a 2';  
    break;
    case 3:             //case "salut":
      echo '$nombre est egal a 3';  
    break;
    default:
      echo '$nombre est inferieur à 1 ou superieur a 3';  
    break;
    } 
    ?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
9
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
    <?php
    for ( $i = 1; $i <= 10 ; $i++ )
    {
    echo "$i -<BR>";
    }
    ?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
10
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
    <?php
    $i = 1;
    while ( $i <= 20 )
    {
    echo "$i - ";
    $i++; // IMPORTANT
    }
    ?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
11
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
    <?php
    $i = 5; //5
    do {
        echo $i . '<br />';
        $i++; // IMPORTANT
    } while ($i<=4);
    ?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
12
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
    <?php
    //echo "Avec HTTP_USER_AGENT : $HTTP_USER_AGENT<br>";
    //ne fonctionne pas avec notre version de php?
    //ne fonctionne pas avec windows et isapi
    echo getenv("REMOTE_ADDR")."<P>";
    //Avec windows et ISAPI
    echo $_SERVER["REMOTE_ADDR"]."<P>";
    //echo getenv('OS'); //non
    echo $_SERVER["SERVER_SOFTWARE"]."<P>";
    echo $_SERVER["SERVER_ADMIN"]."<P>";
    //echo getenv('PROCESSOR_IDENTIFIER'); //non
    //echo "Avec getenv() : ".getenv("REMOTE_ADDR");
    ?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
13
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
<h4>Merci <?php echo $_REQUEST['nom'];?></h4>
<?php
  //form3.html
  echo '<p>Votre commentaire :', $_REQUEST['texte'],'</p>';
?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
form3.html
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
13_form1.php
<form method="post" action="13_form1.php">
<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="texte" cols="40" rows="3"></textarea>
</p>
<input type="submit" name="Submit" value="Envoyer">
</form>

</BODY>
</HTML>

------------------------------------------------------------------------------------------
14
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
<?php
// si les champs sont remplis ----form4.html
if(!empty($_REQUEST['nom']) && !empty($_REQUEST['texte'])){
  echo '<h4>Merci ', htmlentities($_REQUEST['nom']),'</h4>';
  echo '<p>Votre commentaire : ';
  echo htmlentities($_REQUEST['texte']),'</p>';
}else{
  echo '<h4>Erreur !</h4>';
  echo '<p>Vous devez remplir correctement tous les champs</p>';
}
?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
form4.html
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
14_form2.php
<form method="post" action="14_form2.php">
<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="texte" cols="40" rows="3"></textarea>
</p>
<input type="submit" name="Submit" value="Envoyer">
</form>

</BODY>
</HTML>

------------------------------------------------------------------------------------------
15
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
<?php
$a1 = array("un chien","deux chien","trois chien","nous irons au bois chien");
$a2 = array(1 => "un chat","deux chat","trois chat","nous irons au bois chat"); 
// pour commencer à 1
$a3 = array(1 => "un",2 => "deux",3 => "trois",4 => "nous irons au bois");
while(list($cle,$val) = each($a3))
{
 echo "$cle : $val<br>";
}
reset($a3);
while(list($cle,$val) = each($a3))
{
 echo "$cle : $val<br>";
}
// Sans afficher l'indice
foreach($a2 as $val)
{
 echo "$val<br>";
}
// En affichant l'indice
foreach($a1 as $cle => $val)
{
 echo "$cle : $val<br>";
}
?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
16
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
<?php
 $tableau = array(1 => 1, 4, 2);
$tableau[2] = "7";
arsort($tableau);  //-rsort (Trie un tableau en ordre inverse) 
          //-asort  (Trie un tableau en ordre inverse et conserve l'association des index) 
         //-arsort (Trie un tableau en ordre inverse et conserve l'association des index)  
        //-ksort (Trie un tableau suivant les clés) ...etc

while(list($cle,$val) = each($tableau))
{
 echo "$cle : $val<br>";
}
?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
17
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
<?php
$page = ""; //déclarer pour windows
 $fp = fopen("form4.html","r"); //lecture du fichier
while (!feof($fp)) { //on parcoure toutes les lignes
 echo fgets($fp, 4096); // lecture du contenu de la ligne
}
//$titre = eregi("<title>(.*)</title>",$page,$regs); //on isole le titre
//echo $regs[1];
fclose($fp);
?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
 form4.html
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
14_form2.php
<form method="post" action="14_form2.php">
<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="texte" cols="40" rows="3"></textarea>
</p>
<input type="submit" name="Submit" value="Envoyer">
</form>

</BODY>
</HTML>

------------------------------------------------------------------------------------------
18
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
<?php  //form5.html
$nom = $_REQUEST['nom']; //'nom'
$email = $_REQUEST['email'];
if($fp=fopen("php_8_fichier.txt","a")){ /* ouverture du fichier en écriture */ 
  fputs($fp, "n"); // on va a la ligne
  fputs($fp, "$nom|$email"); // on écrit le nom et email dans le fichier
  fclose($fp);
  echo "nom: $nom Email: $email";
  echo "<BR>";
  echo strlen($nom);
  echo " lettre dans le nom<BR>";
  echo " enregistrement réussis";
  }
  else{ // L'ouverture a échouée
  echo "Ouverture du fichier impossible";
  exit();
  }
?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
form5.html
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
18_fichier2.php
<form method="post" action="18_fichier2.php">
<p>Exemple : Que pensez vous de ce site ?</p>
<p>Votre nom :<br>
<input type="text" name="nom" size="40"><br>
Commentaire :<br>
<p>Votre E=-Mail :<br>
<input type="text" name="email" size="40"><br>
</p>
<input type="submit" name="Submit" value="Envoyer">
</form>

</BODY>
</HTML>

------------------------------------------------------------------------------------------
19
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
    <?php
    if (file_exists("php_8_fichier.txt"))
        $fp = fopen("php_8_fichier.txt", "r"); // le fichier existe, on l'ouvre
    else{ // le fichier n'existe pas
        echo "Fichier introuvable !<br>Importation stoppée.";
        exit();
    }
    while (!feof($fp)){ // On parcours le fichier
        $ligne = fgets($fp,4096); // On se déplace d'une ligne
        $liste = explode("|",$ligne); // Champs séparés par |, on en fait un tableau
        $nom = $liste[0];
        $email = $liste[1];
        echo "nom: $nom &nbsp;&nbsp;&nbsp; email: $email<br>";
}
fclose($fp); // Fermeture du fichier
    ?>
</CENTER>
</BODY>
</HTML>

------------------------------------------------------------------------------------------
php_8_fichier.txt

Mers|boba@hotmail.com

Coyotte|Coyotte@ee.fr
Coyotte3|Coyotte@ee.fr3

Goldorak|golgote@gigi
|
gtgtg|gtgtg
Bus|gerome@steelers.com
Mers|mers@mers.com
coco le clown|coco@hotmail.com
DeMers|DeMers@hotmail.com
lulu|lulu@jiji.com
Bingo|bibgo@titi.com

------------------------------------------------------------------------------------------
20
<HTML>
<HEAD>
<TITLE>Fichier de test</TITLE>
</HEAD>
<BODY>
<CENTER>
    <?php
     $fichier = "php_8_fichier.txt";
    if (file_exists($fichier)) { // on vérifie que le fichier existe
          echo $fichier;
        if ($tableau = file($fichier)) { // ouverture du fichier, dans un tableau
                echo $tableau;
            while(list(,$val)=each($tableau)){
                echo $val; // affichage de chaque ligne du fichier
                }
        }
        else {
            echo "Erreur, le fichier n'a pas pu être ouvert.";
        }
    }
    else {
        echo "Fichier introuvable !";
    }
    ?>
</CENTER>
</BODY>
</HTML>



 


   

Voici mes coordonnees: Stéphane Mercier (Mers), stephane.mercier@cegeplevis.ca, 418 833-5110, poste 5511, Local G205A (disponnible par MIO)

Tout droit réservé à personne !!!

.