MELIA version 4

Transcription

MELIA version 4
MELIA
version 4
mars 2005
Annexes
Daniel Deycard, Jacques Messines, Stéphanie Roussel, Jean-Marie Treins
CATICE – (DD – JM – SR – JMT)
1
MELIA v. 4 [30/03/05]
TTaabbllee ddeess m
maattiièèrreess
Annexe 1.
(sadmin) : Installation d’EasyPHP 1.5 ou 1.6 ou 1.7 .................................................................. 3
Sur une machine WinNT...................................................................................................................................... 3
Sur une machine Win98 ...................................................................................................................................... 4
Remarques........................................................................................................................................................... 4
Vérifications........................................................................................................................................................ 4
Annexe 2.
(sadmin) : installation séparée de Apache, PHP et MySQL ...................................................... 5
Introduction......................................................................................................................................................... 5
Installation d’Apache sur le serveur ................................................................................................................... 5
Cas Win98....................................................................................................................................................... 5
Cas WinNT ..................................................................................................................................................... 5
Test de fin d’installation.................................................................................................................................. 5
Installation du serveur MySQL ........................................................................................................................... 5
Cas Win98....................................................................................................................................................... 6
Cas WinNT ..................................................................................................................................................... 6
Installation de PHP............................................................................................................................................. 6
Php.ini ............................................................................................................................................................. 6
httpd.conf ........................................................................................................................................................ 6
Annexe 3.
(sadmin) : mise à jour de PHP par dessus EasyPHP.................................................................. 8
Préambule ........................................................................................................................................................... 8
Procédure de mise à jour de PHP....................................................................................................................... 8
Annexe 4.
(sadmin et admin) : Melia avec un seul établissement ............................................................... 9
Installer Melia..................................................................................................................................................... 9
Créer un établissement........................................................................................................................................ 9
Administrer l’établissement ................................................................................................................................ 9
Former des utilisateurs ....................................................................................................................................... 9
Annexe 5.
(admin): format des fichiers eleves.txt et profs.txt ................................................................... 10
Généralités........................................................................................................................................................ 10
Format du fichier eleves.txt............................................................................................................................... 10
Format du fichier profs.txt ................................................................................................................................ 10
Annexe 6 : (sadmin) paramétrer un compte dans MySQL ............................................................................. 12
Annexe 7 : FAQ ................................................................................................................................................... 14
Problèmes d’installation (sadmin et admin) ..................................................................................................... 14
Problèmes d’utilisation (tous)........................................................................................................................... 14
Problèmes d’administration (admin) ................................................................................................................ 15
CATICE – (DD – JM – SR – JMT)
2
MELIA v. 4 [30/03/05]
Annexe 1. (sadmin) : Installation d’EasyPHP 1.5 ou 1.6 ou 1.7
Pour sadmin avec serveur sous Windows
Cette nouvelle version de Melia a été modifiée pour fonctionner avec toutes les versions de PHP de 4.0.1 à
4.3.3 incluses. En principe… ☺
Cette installation est particulièrement simple sur toutes les plateformes Windows (98, Me, NT, 2000, XP).
Pour XP et EasyPHP 1.5, une fois l’installation terminée, il faut remplacer le fichier EasyPHP.exe par une
version particulière spéciale sur le site http://www.easyphp.org/ (cette version fonctionne aussi sous NT et
2000).
Vous pouvez laisser les valeurs par défaut, notamment le répertoire d’installation \Program Files\Easyphp.
Le principaux répertoires seront des sous répertoires, notamment PHP et MySQL. Le serveur Web sera vu
sous le nom localhost et la racine des documents (c’est à dire http://localhost/) correspondra au sous
répertoire www/.
Note : certaines installations se finissent mal, par exemple sur certaines versions de NT4, on obtient le
message suivant :
"L'ordinal 6453 est introuvable dans la bibliothèque de liaisons dynamique MFC42.DLL"..
Remplacez l'exécutable EasyPhp.exe présent dans le répertoire d'installation par la version sans
les MFC téléchargeable ici. http://yarglah.free.fr/download.php3?filename=EasyPhp_sansMFC.zip
Pour tout autre message d'erreur, reportez-vous à http://www.easyphp.org/faq.php3
Dans la suite, on utilisera les raccourcis suivants :
- Win98 pour désigner Windows 98, 98SE, Millenium,
- WinNT pour désigner Windows NT4 (avec SP5 minimum), Windows 2000, Windows XP,
Windows 2003, quelles que soient les versions.
Il est possible d’utiliser Windows 95 OSR2 avec EasyPHP mais il faut avoir installé la librairie DCOM 95 (voir
le site http://www.microsoft.com).
Pour l’explorateur utilisé sur les clients, IE 5.5 minimum est très chaudement recommandé : IE 5.0 est
insuffisant pour certaines pages « gestionnaire », Netscape 4.x donne des affichages n’ayant qu’un rapport
lointain avec ceux choisis à la conception…
Sur une machine WinNT
Apache et MySQL peuvent s’installer en tant que services1. Vous pouvez vérifier que c’est le cas en faisant
afficher la liste des tâches (CTRL Alt Suppr puis Liste des processus). Vous pouvez aussi vérifier en allant
dans Outils d’Administration / Services que ces services sont bien installés et qu’ils démarrent
automatiquement.
Si ce n’est pas le cas, lancez EasyPHP puis double cliquez sur l’icône qu’il montre dans la partie droite de la
barre des tâches. Cochez la case « Démarrer les serveurs en tant que service NT/2000 ».
Au prochain reboot, Apache et MySQL seront lancés en tant que services. Ne cherchez pas l’icône dans la
barre des tâches : il n’y en a pas dans ce cas-là.
S’il y a toujours un problème, il se peut que la cause provienne d’une installation antérieure d’Apache,
installation éventuellement ratée… Il est possible de rectifier en installant manuellement ces services en
mode ligne de commande2 :
- pour Apache : apache -i
- pour MySQL : mysqld –install
1
Un service est une application qui fonctionne en tâche de fond, sans que l’utilisateur en ressente une manifestation directe, sans
fenêtre ouverte et sans qu’il soit nécessaire d’avoir une session ouverte (c'est-à-dire sans qu’il y ait nécessairement un utilisateur logé
sur la machine). Un service sous WinNT est en plus intégré au système et paramétrable à l’aide de l’outil services des outils
d’administration.
2
Dans une « fenêtre DOS »
CATICE – (DD – JM – SR – JMT)
3
MELIA v. 4 [30/03/05]
Sur une machine Win98
Dans le cas où la machine sous Windows 98 joue le rôle de serveur, on peut vouloir que les serveurs fonctionnent sans avoir besoin
d'ouvrir une session :
Il faut forcer les deux serveurs pour qu’ils s’exécutent en tant que service en les ajoutant dans la clé du registre
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
qui lance des programmes avant l’ouverture de session
Dans le cas où la station est un poste prof que l'on allume le matin et que l'on éteint le soir (éviter tout de même d'éteindre 3 fois par
jour !), on peut laisser une icône sur le bureau ou bien la mettre dans le menu Démarrer / Programmes / Démarrage.
Remarques
Si vous avez le choix entre une machine Win98 ou WinNT pour installer Apache+PHP+MySQL, prenez plutôt la machine sous WinNT
pour des raisons d’efficacité et de stabilité (voir l’annexe 2 d’installation séparée des trois modules).
Sous WinNT, PHP n’apparaît pas comme service, et pour cause : ce n’en est pas un ! Sous WinNT, PHP est un module d’Apache,
c’est à dire un ensemble de DLL qu’Apache appelle pour interpréter les fichiers PHP demandés par l’utilisateur.
Sous Win98, PHP est un programme externe PHP.EXE (un CGI) appelé par Apache à chaque requête : il y a donc en mémoire du
serveur autant de PHP.EXE qu’il y a de pages PHP traitées simultanément… Il y a moyen d’installer PHP comme module d’Apache
sous Win98, mais la documentation est réservée quant à la stabilité… (voir Annexe 2).
Vérifications
Dans la zone adresse d’un navigateur, tapez :
- http://localhost/ depuis le serveur,
- http://xxx.yyy.zzz.ttt/ depuis un ordinateur quelconque du réseau.
CATICE – (DD – JM – SR – JMT)
4
MELIA v. 4 [30/03/05]
Annexe 2. (sadmin) : installation séparée de Apache, PHP et MySQL
Introduction
L’objectif est d’avoir un serveur Web avec PHP et un serveur MySQL. Certains ont déjà tout ou partie de ces
composants : ils peuvent donc démarrer plus loin dans cette installation. D’autres partent de rien. Ils peuvent
installer tout le nécessaire sur une machine quelconque qui n’est pas nécessairement le serveur de fichier
du collège, qui peut être sous Windows (toute version à partir de Windows 98), Linux ou Mac.
Cette documentation explique l’installation de chaque module. Certains choix sont faits. Le plus important
est celui d’Apache comme serveur Web. Il est possible d’utiliser un serveur IIS existant ou tout autre serveur
Web sur lequel il est possible d’ajouter PHP.
Installation d’Apache sur le serveur
Apache est donc le serveur Web. Exécuter le programme d’installation.
Suivant les versions de Windows, ce programme va mettre à jour la version de « Windows Installer » puis
rebooter.
Ensuite commence l’installation proprement dite. Prenez les valeurs par défaut pour les paramètres TCP/IP
et l’installation complète.
Pour le répertoire d’Apache, prenez plutôt C:\Apache afin d’avoir une arborescence moins profonde et des
noms de répertoires sans espaces.
Cas Win98
Le programme propose de lancer Apache en tant que « service » Windows. Il propose… mais ne le fait pas
pour Win98. Avant de rebooter comme il est demandé, vous pouvez aller modifier la clé
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices en rajoutant une
variable chaîne de nom Apache (par exemple) et de valeur « C:\Apache\Apache.exe ».
Après le reboot, une fenêtre noire montre la présence d’Apache. Ce n’est pas une fenêtre d’un programme
Dos mais celle d’un programme 32 bits fonctionnant en mode console. Il ne faut pas fermer la fenêtre sauf
pour arrêter Apache. Mettez-là en icône.
Cas WinNT
Choisissez l’installation complète et répondez aux questions posées :
domaine : par exemple aquitaine.clg. Le domaine à indiquer peut être de cette forme et, sauf bonne
raison particulière, n’est pas un nom de domaine référencé sur Internet.
server name
: mauriac.aquitaine.clg (s'il n'y a ni DNS ni host, mettre l'IP)
adresse admin : mettre une vraie (cat33.ac-bordeaux.fr par ex.).
service : oui
Vous pouvez obliger Apache à s’installer après coup comme service par :
Apache -i
Vérifiez , dans la liste des services, que le lancement d’Apache s’effectue automatiquement.
Inversement on peut supprimer le service Apache (sans désinstaller Apache) par :
Apache -u
Test de fin d’installation
Dans un navigateur du serveur, tapez l’adresse suivante :
http://localhost/index.html
La page d’accueil d’Apache doit s’afficher.
Vous pouvez aussi vérifier depuis une autre machine en tapant :
http://xxx.yyy.zzz.ttt/
Installation du serveur MySQL
Ce service est indépendant d’Apache et peut résider sur une autre machine… mais ne cherchez pas trop les
complications.
Exécuter le programme d’installation et choisissez pour répertoire d’installation C:\Apache\MySQL.
Le serveur MySQL lit la configuration particulière éventuelle (MySQL semble pouvoir s’en passer) dans
CATICE – (DD – JM – SR – JMT)
5
MELIA v. 4 [30/03/05]
<windir>\My.ini qui contient par défaut :
basedir=C:/Apache/mysql
datadir=C:/Apache/mysql/data
Les options qu’on y trouve peuvent aussi être indiquées sur la ligne de commande.
Cas Win98
Le serveur MySQL (Mysqld.exe dans ce cas) ne se lance pas automatiquement comme service sous Win98.
Pour l’y obliger, voir ci-dessus le paragraphe 1.2.
Pour cette première fois, lancez manuellement C:\Apache\MySQL\MySQd.exe.
Il vous demande un nom et un mot de passe. Mettez melia, melia.
Cas WinNT
Le serveur MySQL s’installe comme service mais il faut aller dans la liste des services pour l’obliger à se
lancer automatiquement au démarrage (service Mysql). Le programme est dans ce cas Mysqld-nt.exe. Si le
service n’est même pas installé, il est possible de le forcer en tapant en mode ligne de commande :
Mysqld -install
Si, ultérieurement vous désirez supprimer le service MySQL :
Mysqld -remove
Faites-le avant la désinstallation de MySQL : elle ne supprime pas le service…
Installation de PHP
Il n’y a pas de véritable programme d’installation de PHP pour Apache sous Windows. Il faut utiliser le fichier
ZIP que l’on trouve sur le site http://www.php.net, le décompacter et le copier en choisissant pour répertoire
de destination C:\Apache\PHP.
Les modifications à effectuer ensuite sont indiquées dans le fichier install.txt et consistent à copier des DLL
dans le répertoire système de Windows et à modifier les fichiers php.ini et httpd.conf.
Php.ini
Prenez pour base le fichier php.ini-dist que vous copierez sous le nom php.ini dans le répertoire de Windows
(en principe C:\Windows ou c:\winNT). Effectuez les modifications suivantes dans php.ini.
- remplacer la ligne extensions-dir par :
extension-dir=c:/Apache/Php/extensions
(noter les / au lieu des \)
- vérifier le répertoire des données des sessions :
session_save_path=c:\Apache\Php\sessiondata
- à la fin du fichier, enlever les remarques aux extensions que l’on veut garder (bz2, dbase et zlib
pour le melia par exemple) et vérifier que les fichiers correspondants sont bien situés dans
C:\Apache\Php\extensions
- Vérifiez la valeur de session_cookie_path. Par exemple :
session_cookie_path =c:\temp
httpd.conf
Il faut rajouter ou modifier dans le fichier de configuration d’Apache (c'est-à-dire c:\apache\conf\httpd.conf),
tout ce qui a trait à la coexistence d’Apache et de PHP en signalant à Apache que l’extension php est, au
même titre que cgi ou pl, une extension correspondant à des scripts à interpréter par un module interne ou
externe à Apache et non pas un fichier à envoyer tel quel au navigateur client comme le sont les fichiers
htm.
Dans cette version pour Windows, le module PHP auquel seront envoyés les scripts d’extensions PHP est
un module externe qui peut être choisi de deux façons différentes.
Sous forme de cgi 3 externe :
A chaque demande de script d’extension PHP par le navigateur, Apache va répondre en lançant un CGI
3
Un CGI (common gateway interface) est un programme (souvent un script) qui s’exécute sur le serveur Web en prenant en entrée des
données envoyées par ce serveur et en fournissant en sortie (c'est-à-dire en renvoyant au serveur) du contenu utilisable par le
navigateur.
CATICE – (DD – JM – SR – JMT)
6
MELIA v. 4 [30/03/05]
(c’est le programme externe PHP.EXE sous Windows) auquel il va fournir en paramètre d’entrée le script
PHP. En sortie, PHP.EXE va renvoyer au navigateur du texte html qu’Apache va se contenter de retourner
au navigateur client.
Cette méthode a un gros inconvénient : celle de nécessiter, pour chaque script demandé, le lancement d’un
processus PHP.EXE dans la mémoire du serveur. Par suite les résultats seront fournis de façon plus lente
qu’avec la méthode par module indiquée ci-dessous. La documentation de PHP indique cependant que la
méthode par cgi est plus fiable et que c’est la meilleure solution sur des serveurs de type Win98. Vous voilà
prévenus !
Pour mettre en œuvre la méthode d’appel par CGI, modifier httpd.conf de la façon suivante :
- Rechercher « Script Alias » et rajouter ceci en dessous de la ligne existante :
ScriptAlias /php/ "c:/Apache/php/"
- Rechercher « AddType », et sortir la remarque de la ligne contenant
AddType application/x-httpd-php .php
- De la même façon, plus loin, avec Action, il faut ajouter :
Action application/x-httpd-php "c:/Apache/php/php.exe"
Cette méthode est choisie de façon « transparente » par EasyPHP pour des machines Win98.
Sous forme de module intégrable à Apache :
Dans ce cas (recommandé du bout des lèvres par la documentation de PHP sous Windows et seulement
avec un serveur de type WinNT), Apache charge en mémoire un ensemble de DLL qui effectueront le même
travail que le CGI ci-dessus. Mais ces DLL ne seront présentes qu’en un seul exemplaire et intégrées de
façon plus étroite à Apache. L’interprétation des scripts sera donc plus rapide et plus économe en
ressources pour le serveur.
Pour mettre en œuvre cette méthode, modifier httpd.conf de la façon suivante :
- Dans la suite des LoadModule, ajouter la ligne :
LoadModule php4_module "c:/Apache/php/sapi/php4apache.dll"
- A la fin des AddModule, ajouter :
AddModule mod_php4.c
- Dans les AddType, ajouter les 3 lignes :
<IfModule mod_php4.c>
AddType application/x-httpd-php .php
</IfModule>
Ensuite, copiez le fichier php4ts.dll dans le répertoire système de Windows (en général c:\windows\system
pour Win98 ou XP et c:\winNT\system32 pour WinNT).
Il vaut mieux rebooter que se contenter d’arrêter puis redémarrer Apache.
Lors du lancement d’Apache depuis une console, vous verrez mentionné le fait qu’Apache s’exécute avec
PHP en module.
Cette méthode est choisie de façon « transparente » par EasyPHP pour des machines WinNT.
Notes :
Comment savoir si le serveur PHP fonctionne ?
- écrivez une page index.php contenant juste la ligne
< ?php phpinfo(); ?>
- placez-là à la racine d'Apache
- tapez dans le navigateur local localhost/index.php
- une page d'informations PHP doit apparaître
Si après cette installation le serveur php ne fonctionne pas correctement, que faire ?
Exemple : une erreur apparaît sur le serveur, mettant en cause certains fichier ODBC et leur version :
C'est un problème d'installation : il faut remplacer ces fichiers par les DLL originales du CD de Windows 98
ou à télécharger ici : http://www.microsoft.com/downloads/release.asp?releaseid=34062
CATICE – (DD – JM – SR – JMT)
7
MELIA v. 4 [30/03/05]
Annexe 3. (sadmin) : mise à jour de PHP par dessus EasyPHP
Préambule
EasyPHP est un « package » permettant d’installer, sur une machine Windows, un serveur Apache avec le
module PHP ainsi qu’un serveur MySQL. La dernière version à ce jour est la 1.7 et la vitesse des mises à
jour ne suit pas celle des versions de chacun des composants.
L’objectif du paragraphe suivant est de garder la commodité et les fonctionnalités de EasyPHP 1.6 tout en
remplaçant la version 4.3.3 de PHP qu’il inclut par des versions plus récentes.
D’autres articles indiqueront comment mettre Apache et MySQL à jour.
Ci-dessous, on note :
o EZ = C:\Program Files\EasyPHP
o WIN = le répertoire de Windows (en général C:\Windows ou C:\Winnt),
o SYST = le répertoire système de Windows, c’est à dire WIN\system ou WIN\system32 suivant la
version de Windows.
Si EZ ne vaut pas la valeur ci-dessus, il vous faudra modifier votre fichier php.ini à la fin des opérations en remplaçant partout
C:\Program Files\EasyPHP par la bonne valeur (par exemple D:\easyphp). Attention : il faudra aussi chercher et remplacer C:/Program
Files/EasyPHP/ (avec des /).
Installer EZ 1.7 si ce n'était pas déjà fait puis téléchargez la dernière version de PHP sous forme de fichier
ZIP et non pas de fichier EXE contenant un « installer ». Vous la trouverez là sur le site :
http://www.php.net/
ou peut-être sur un miroir plus proche.
Préservez php.ini : il pourra vous servir plus loin…
Procédure de mise à jour de PHP
Chaque fois que Windows vous le demande, acceptez d’écraser les anciens fichiers.
1. Si EasyPHP est lancé, quittez-le avec l’icône en bas à droite de la barre des tâches et redémarrez votre
machine en évitant qu’il se relance automatiquement : certaines DLL peuvent rester en mémoire et
gêner l’installation des remplaçantes.
2. Décompactez le contenu du ZIP de PHP (php-x.y.z-Win32.zip) dans un répertoire temporaire temp, sur
votre bureau pour simplifier. Copiez le contenu de ce répertoire temp dans le répertoire EZ\php.
3. Copiez le fichier EZ\php\php4ts.dll dans le répertoire SYST
4. Copiez le contenu de EZ\php\dlls dans SYST
5. Copiez EZ\php\sapi\php4apache.dll dans EZ\php
6. Modifiez PHP.INI en prenant les renseignements non évidents dans le php.ini d’EasyPHP
7. Vérification :
a) Lancez EasyPHP
b) Faites un clic droit sur l’icône de EasyPHP dans la barre des tâches (côté droit). Sélectionnez
Administration
c) Dans la page Web qui s’ouvre, cliquez sur « infos php ».
d) Vous devez voir s’afficher les informations de PHP.
CATICE – (DD – JM – SR – JMT)
8
MELIA v. 4 [30/03/05]
Annexe 4. (sadmin et admin) : Melia avec un seul établissement
Dans le cas d’un seul établissement, l’admin et le sadmin ne font a priori qu’une seule personne. Il sera
donc profitable de lire la documentation sadmin, même si certaines parties présentent moins d’intérêt.
Une fois Apache, PHP et MySQL installés, les scripts de Melia décompactés dans le sous-répertoire
melia (par exemple), à la racine web du serveur, voici les étapes à suivre.
Installer Melia
Dans un navigateur taper :
http://localhost/melia/install/install.php si vous êtes sur le serveur
•
http://192.168.1.100/melia/install/install.php si vous utilisez un navigateur client et que
•
l’adresse IP de votre serveur est 192.168.1.100
Si la base existe déjà, un message d’erreur vous le signalera. Il n’est pas possible de supprimer la base
melia à partir de Melia.
Les valeurs par défaut conviennent en principe dans ce cas particulier. Vous pouvez cocher « Intranet »
(c’est en fait la valeur par défaut choisie par le script !).
Créer un établissement
C’est le rôle du sadmin. Taper alors dans un navigateur (avec les mêmes conventions que ci-dessus) :
http://localhost/melia/sadmin/sadmin.php
•
http://192.168.1.100/melia/sadmin/sadmin.php
•
puis choisissez le bouton
Remplissez les renseignements (vous pourrez aussi les modifier depuis la page admin de
l’établissement). C’est fini. Vous n’avez plus besoin de vous loger sadmin. L’établissement créé a pour
numéro 1.
Administrer l’établissement
C’est le rôle de l’admin de l’établissement qui a été créé. Vous y accédez comme toutes les personnes
de votre établissement :
http://192.168.1.100/melia/
•
C’est la page index.php qui s’exécute (ce qui revient donc à taper http://192.168.1.100/melia/index.php).
Mais comme le script qui s’est déroulé a vu qu’il n’y avait qu’un seul établissement, il enchaîne
directement vers la page de login.
Former des utilisateurs
Le plus important est de leur créer un raccourci qui pointe vers :
http://192.168.1.100/melia/
•
Pour le reste, deux heures de TP sont largement suffisantes.
CATICE – (DD – JM – SR – JMT)
9
MELIA v. 4 [30/03/05]
Annexe 5. (admin): format des fichiers eleves.txt et profs.txt
Généralités
Ces fichiers sont utiles lorsqu’on ne peut utiliser le GEP (ensemble de fichiers au format dBase utilisés
par l’administration dans les collèges et lycées) pour enregistrer les élèves et les professeurs dans la
base de données melia.
Ces fichiers texte peuvent être créés manuellement mais il est évidemment plus rapide de les créer à
l’aide de fichiers existants et d’outils classiques comme un tableur permettant l’exportation au format
texte avec séparateurs.
•
•
•
•
•
•
•
•
Leurs noms sont imposés : eleves.txt et profs.txt. Par contre, le séparateur de champs utilisé
peut être la virgule, le point-virgule ou le caractère de tabulation (code ASCII 9). Le script qui est
chargé de les intégrer analyse le début du fichier et repère ce séparateur dans la première ligne
qui n’est pas vide et qui n’est pas un commentaire. Ce séparateur doit alors être le même pour
toutes les autres lignes du fichier.
Malgré cette possibilité, il est préférable d’utiliser le point-virgule : il se voit et il est moins utilisé
dans du texte.
Ces fichiers peuvent contenir des lignes vides ou des lignes de remarques (lignes commençant
par #).
Le premier champ N°ident est réservé pour l’instant et doit être vide sauf si vous avez un
moyen d’identifier les élèves et les profs (n° INSEE par exemple, mais pas le n° GEP si plusieurs
établissements sont gérés). Ce champ n’est pour l’instant pas exploité.
Le champ mdp_crypté est réservé et n’est utilisé que si les fichiers textes sont créés en
utilisant le GEP. Si les fichiers textes sont créés d’une autre façon, ce champ doit être laissé
vide.
Beaucoup de champs peuvent être laissés vides (sauf nom et classe) mais leur emplacement
doit être respecté quitte à écrire des « ; » consécutifs (qui sont facultatifs lorsqu’ils sont à la fin).
Les espaces avant et après les séparateurs sont supprimés lors de l’analyse des champs.
La discipline peut être indiquée de diverses manières (voir plus bas).
Format du fichier eleves.txt
Les lignes doivent être formées des champs suivants :
N°ident ; Civilité ; nom ; prénom ; classe ; naissance ; mdp crypté
Seuls le nom et la classe sont imposés. Exemple minimal absolu :
;;Dubois ;;5B ;
Voici un exemple dans lequel certains champs sont absents, pas toujours les mêmes :
#fichier d’incorporation des élèves
#les 3 premiers ont un n° GEP inconnu
,,AQEAVT,GILLAUME,5G2,27/06/83
,,AQGAURGUES,JULIEN,3G2,30/08/81
,,AQUALONGET,CELINE,4G2,11/12/81
Civilité doit valoir : M., Mme ou Mlle.
Naissance doit être au format jj/mm
Format du fichier profs.txt
Le nombre de champs est variable du fait de la présence des classes.
N°ident ; Civilité ; Nom ; Prénom ; discipline ; naissance ; mdp_crypté ; classe1 ; …
L’exemple minimal absolu est :
;;Dubois
Le script d’incorporation se charge de fabriquer le login et les classes pourront être saisies ultérieurement
dans une des pages autorisées à l’administrateur.
Exemples de lignes possibles, le séparateur étant toujours « ; »:
CATICE – (DD – JM – SR – JMT)
10
MELIA v. 4 [30/03/05]
;M.;Monnom;Monprénom ;bio;;3A ;3B ;4C ;5C ;6E
;M.; Walker;Johny;math;; 802
;Mlle;Casse ;Patricia ;all;; 5A
;Mme;Curie;Marie
;;Lenouveau ;;20;;5A ;5B ;5C ;6A ;6D
Remarquez que le script qui incorpore les profs est assez laxiste pour les disciplines. Il est possible de
ne fournir qu’une partie du nom de la discipline ou même son numéro… à condition de le connaître. Ce
choix peut différer d’une ligne à l’autre. Voici la liste des disciplines retenues, avec leurs numéros. Il sera
plus commode d’indiquer 32 que « lettres cla ». Le script qui crée des fichiers textes à partir des fichiers
GEP effectue ce codage.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
divers
administration
allemand
anglais
arabe
arts
assistant
basque
biochimie
biologie-géologie
biotechnologie
braille
catalan
chimie
comptabilité
documentation
E.M.T.
économie et gestion
éducation
CATICE – (DD – JM – SR – JMT)
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
EPS
espagnol
formateur
génie
grammaire
grec
histoire-géographie
information et orientation
instituteur spécialisé
italien
langues
lettres
lettres classiques
lettres modernes
lettres+
lettres+langue
mathématiques
maths+
MI-SE
11
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
musique
occitan
orientation
PEGCsection 13
philosophie
physique-chimie
portugais
premier degré
professionnel
russe
sciences
sciences et techniques
secrétariat
SES
STI
SVT
technologie
tertiaire
vente
MELIA v. 4 [30/03/05]
Annexe 6 : (sadmin) paramétrer un compte dans MySQL
Le plus simple pour cela est d’utiliser phpMyAdmin (disponible dans Easyphp ou installable depuis un
paquetage à télécharger là : http://www.phpmyadmin.net/home_page/ choisissez la dernière version
stable et suivez les instructions dans le fichier Documentation.html)
Création d’un utilisateur pour la base de données melia :
Dans la base de données mysql
(celle utilisée par mysql lui-même
pour sa gestion) :
- Affichez les utilisateurs de
MySQL :
Ils sont dans la table user
- Choisissez « Insérer un nouvel
enregistrement »
Saisissez comme ci-contre en
n’oubliant pas de crypter le mot
de passe avec la fonction
PASSWORD
Ne donnez aucune permission
au-dessous, elles sont destinées
à toutes les bases de données ce
ne serait pas raisonnable !
Une fois remplie validez la page
(bouton de formulaire audessous)
Vous verrez le résultat avec le
mot de passe crypté
CATICE – (DD – JM – SR – JMT)
12
MELIA v. 4 [30/03/05]
S’il n’y en a pas, mettez un mot
de passe au compte root avec le
bouton « modifier » et validez.
Affichez cette fois-ci la table db
et choisissez d’insérer également
un nouvel enregistrement :
Respectez les saisies ci-contre.
Comme user, vous devez mettre
le nom saisi précédemment.
La base de données peut
s’appeler comme vous voulez
(nom court sans espace ni signes
de ponctuation ni accents), par
défaut, melia.
Validez
C’est terminé pour MySQL, par
contre pour qu’il prenne en
compte vos modifications, il vous
faut relancer le serveur pour qu’il
relise ses tables, ou bien lui
donner une instruction FLUSH
PRIVILEGES dans une zone de
saisie SQL.
Vous aurez cette zone d’un clic
sur la base mysql :
Terminé : pensez à noter le nom de la base, le nom d’utilisateur et son mot de passe (avant cryptage !!!)
pour les donner à Melia pendant la phase d’installation de la base de données.
CATICE – (DD – JM – SR – JMT)
13
MELIA v. 4 [30/03/05]
Annexe 7 : FAQ
Problèmes d’installation (sadmin et admin)
Q : (Serveur Linux) Lorsque je lance l'installation depuis un navigateur
/melia/install/install.php j'obtiens une erreur au moment de l'incorporation des
rubriques.
R : Voir avec l'administrateur du serveur : il faut que l'utilisateur mysql utilisé ait le privilège "reload" pour
cette opération. En cas de difficultés lors de l'installation initiale, la réaliser avec le compte root de
MySQL (renseigner le fichier melia/include/vars_adm.php s'il existe déjà, sinon faire les modifications
dans le fichier vars_adm_safe.php). Et penser à le remodifier ensuite, pour le fonctionnement quotidien,
ce privilège est inutile.
Q : (serveur Linux) Lors de l'affichage des diplômes il y a une erreur d'écriture indiquée
dans la page. Ca arrive aussi au moment d'incorporer le fichier des élèves F_ELE.DBF.
R : Il s'agit d'un problème de droits Linux, qui en l'état, ne permettent pas l'écriture d'un fichier sur le
serveur. Demander à l'administrateur du serveur de mettre comme droits :
- 664 sur tous les fichiers
- 775 sur tous les dossiers de l'arborescence du melia (en fait il suffit d’autoriser l’écriture sur
les dossiers data, sadmin/maj et sadmin/maj_faites et include)
Aussi, il faut donner tout le dossier melia au compte (apache ?) qui fait tourner le serveur WEB.
Q : Dans mon établissement, la personne qui s’occupe du serveur MySQL m’impose le
nom de la base (melia_0330000F au lieu de melia). Comment dois-je faire pour installer
MELIA ?
Le script d’installation vous demandera tout ça. Simplement il est nécessaire qu’avant de lancer
l’installation, vous ayez donné les bons paramètres à MySQL (§ précédent).
Si vous avez déjà lancé l’installation et que ça ne marche pas, il vous faudra supprimer le fichier
/include/vars_adm.php et recommencer l’installation en répondant convenablement.
$user="root";
$mdp="";
$db="melia";
Modifiez la ligne qui contient le nom choisi pour la base de données :
$db="melia_0330000F";
Et modifiez le compte choisi pour gérer la base…
Si la base existe avant l’installation, cochez la case « Site hébergé chez un FAI ».
Q : Lorsque je me connecte la première fois après l’installation de Melia, j’ai le message :
Impossible d'accéder à la base XXXX
Accès refusé pour l'utilisateur: 'YYYY@localhost' (mot de passe: OUI)
Que faire ?
R : Vous avez eu apparemment des problèmes lors de l’installation (nom de la base, login ou mot de
passe incorrect). Le fichier melia/include/vars_adm.php est donc lui-aussi incorrect.
Supprimez-le (voyez éventuellement avec l’administrateur du serveur), relancez le script d’installation et
fournissez au formulaire de bons renseignements !
Problèmes d’utilisation (tous)
Q : J'ai un problème de connexion assez bizarre.
Si je met un nom d'utilisateur et un mot de passe correct, je tombe sur une page
m'indiquant : "Session non accessible ou expirée " puis affiche un bouton "Ouvrir une
CATICE – (DD – JM – SR – JMT)
14
MELIA v. 4 [30/03/05]
nouvelle session". Tant que je me connecte avec le nom d'utilisateur et le mot de passe
correct, je tombe sur cette page.
Bon, normalement ce cas-là n'arrive plus depuis la version 2.1 de Melia, quelle que soit la version de
EasyPhp utilisée ! Dans le cas contraire, écrivez-nous en précisant les pages concernées. ([email protected]).
Q : J'ai des problèmes d'exécution avec mon serveur sous Linux…
Certaines opérations provoquent des erreurs d'exécution, à cause des droits insuffisants sur les fichiers.
Voici une liste de fichiers pour lesquels le droit d'écriture est requis :
- melia/include/vars_adm.php
- melia/login/maj (tout le dossier)
- melia/login/maj_faites (tout le dossier)
- melia/data et tous ses sous-répertoires (un par établissement)
Il suffit de leur donner des droits 775 sur ces fichiers-là (le groupe étant celui d'apache)
Q : Comment puis-je changer mon mot de passe ?
Il faut que cette possibilité soit accordée par l’administrateur (menu admin, bouton Paramètres
généraux).
Ensuite cocher la case « Changer de mot de passe » qui apparaît dans la page de login. La suite va de
soi…
Q : Est-il possible de tester l’impression d’un diplôme avant d’attendre qu’un élève ait
obtenu le melia ?
R : L’élève test 00000 a toujours acquis son diplôme ! Il suffit donc de passer en mode gestionnaire, de
sélectionner sa classe, et de faire des tests d’impression de diplôme.
Pour trouver la classe de 00000, logez-vous en mode élève sous ce nom. La classe s’affiche en haut à
gauche, sous le nom 00000, par défaut c’est Classe_test.
Le logo du diplôme est personnalisable, voir le menu admin !
Q : Lorsque un prof se connecte, la liste des demandes est vide, même lorsque les
conditions sont réunies pour qu’il y en ait.
R : Vous avez oublié de définir les classes du prof et ses compétences. Cliquez sur le pot de crayons
situé en haut à droite de la fenêtre du navigateur et remplissez la page qui s’affiche.
Attention : lorsque vous revenez dans la page du prof, les demandes sont toujours absentes. Vous
pouvez rafraîchir la page (touche F5 ou icône appropriée dans la barre d’outils de votre navigateur. Et s'il
n'y a toujours rien, c'est qu'aucune demande n'est de votre compétence ☺
Problèmes d’administration (admin)
Q : Lorsque j’utilise « Importation d’utilisateurs », j’ai un message d’erreur concernant la
fonction dbase_open() qui n’existe pas.
Le problème vient du fait que les extensions dBase n’ont pas été installées avec PHP sur le serveur
Apache. Si vous n’êtes pas le sadmin, la seule solution pour vous est de le lui signaler.
Sinon, sous Linux, il faut compiler ces extensions avec PHP.
Sous Windows avec EasyPHP 1.7, il faut cocher la case php_dbase dans le sous-menu
Configuration/Extensions.
Avec les versions précédentes de EasyPHP, cette optionétait installée par défaut.
Q : Lorsque j’entre les élèves dans la base avec le fichier F_ELE.DBF, j’obtiens des
erreurs (Apache se plante) et les classes indiquées sont invalides.
R : Certains fichiers GEP présentent ce problème. Il est difficile de dire si c’est le fichier DBF qui est
pollué ou la bibliothèque « php_dbase.dll » fournie avec EasyPHP qui ne tient pas compte de toutes les
curiosités trouvées dans ces fichiers… Il n’y a rien à faire du côté de MELIA qui se contente d’utiliser
cette bibliothèque avec les fichiers fournis.
CATICE – (DD – JM – SR – JMT)
15
MELIA v. 4 [30/03/05]
Par contre, dans tous les cas rencontrés, on arrive à « réparer quelque chose » dans le fichier DBF en
se contentant de le charger dans Excel (qui gère l’extension DBF si vous ne lui avez pas dit le contraire
lors de l’installation) et en enregistrant aussitôt, sans rien faire, sous le même format. Si ça ne suffit pas,
supprimez une colonne avant celle de DIVCOD (c’est très empirique !). Les seules colonnes que vous ne
devez pas toucher sont :
ELENOET, ELENOM, ELEPRE, ELEDATNAISS, DIVCOD.
Q : Dans mon établissement, je n’ai qu’un fichier DBF partiel et le programme
d’installation me dit qu’il ne convient pas. Que doit contenir le fichier DBF ?
R : Le fichier DBF a pour seule contrainte de contenir 5 colonnes (champs) aux noms imposés et dont
voici les caractéristiques :
Nom
ELENOET
ELENOM
ELEPRENOM
ELEDATNAIS
DIVCOD
Type
Entier
Chaîne
Chaîne
Chaîne
Chaine
Contenu
N° unique d’un élève dans l’établissement
Nom (max 30 caractères)
Prénom (max 25)
Date de naissance au format dBase : YYYYMMDD
Division de l’élève (max 10 caractères)
L’ordre des champs, la taille des chaînes et le type des entiers n’ont aucune importance. La taille
maximale des chaînes ci-dessus (entre parenthèses) est celle que retient MELIA dans sa base.
Q : Dans mon établissement, le fichier GEP n’est pas à jour avant novembre. Suis-je
obligé de rajouter à la main les élèves inscrits tardivement ?
Non. Vous pouvez intégrer les fichiers GEP dans MELIA autant de fois que nécessaire. Seuls les
nouveaux individus seront rajoutés à la base4.
Q : Je ne comprends pas bien la différence entre installation de la base et bascule (ou
mise à jour). Pourquoi ne pas réinstaller chaque année ?
L’installation (install/install.php) de Melia ne se fait qu’une fois par le sadmin.
L’incorporation (ou l’importation) des élèves et des profs par l’admin de l’établissement se fait lors de
la première utilisation de la base.
La bascule (ou mise à jour annuelle ou changement d’année scolaire) se fait sur une base existante,
au début de la nouvelle année scolaire, lorsque l’administration a « basculé » les fichiers de l’année n
vers l’année n+1. Elle ne détruit pas les items acquis par les élèves l’année précédente. Les élèves qui
ne font plus partie de l’établissement sont conservés séparément, avec les items qu’ils ont acquis.
Elle est disponible dans le menu "Admin" sous le nom "Changement d'année scolaire".
La mise à jour des comptes ou « repasse » consiste, comme pour le café, à « repasser » le ou les
fichiers GEP, ce qui se produit lorsque l’administration fournit un GEP provisoire le 5 septembre puis un
nouveau mis à jour le 3 octobre, etc.
Ces trois dernières actions, sont toutes trois regroupées derrière le bouton
du
menu admin de chaque établissement. Le script associé se débrouille pour déterminer quelle est l’action
désirée !
Cette repasse s’applique aussi aux fichiers textes eleves.txt et profs.txt. Par exemple, si 10 élèves nouveaux arrivent
dans le premier mois suivant la « première passe », on peut soit compléter le premier fichier eleves.txt et le
repasser, soit créer un deuxième fichier eleves.txt de 10 élèves et le fournir au script.
Q : Est-il possible de changer le login d’un prof ou d’un élève ? N’y a-t-il pas un risque
de « collision » ?
4
NDLR : voir aussi question suivante.
CATICE – (DD – JM – SR – JMT)
16
MELIA v. 4 [30/03/05]
R : Il est possible de modifier un login, comme les autres caractéristiques relatives aux profs et aux
élèves. Il faut se loger admin, choisir « Gestion des élèves », sélectionner l’élève et modifier le login. Si
le login que vous proposez est déjà donné, MELIA rajoute un numéro à la fin de façon à assurer son
unicité.
Q : J’obtiens des choses curieuses avec le changement d’année scolaire (NDLR : le script
effectuant le changement d’année scolaire est le même que le script d’entrée des élèves par fichiers txt ou dbf et se
trouve dans le menu admin / incorporation) il manque de nouveaux élèves ou j’obtiens des
« incertains » à la place des nouveaux…
Le temps alloué à l’exécution des scripts est trop restreint. En principe c’est le script txt2tables.php
qui est concerné car il analyse le nouveau fichier en cherchant à déterminer si chaque individu est
nouveau, ancien ou parti. Au niveau des scripts, le maximum est fait pour que ces scripts aient le temps
de se terminer… à condition que le fichier de configuration de PHP ne dise pas le contraire ! Vérifiez
PHP.INI et modifiez ou ajoutez la « variable » max_execution_time en écrivant une ligne comme :
max_execution_time=900
Ici, la durée d’exécution du script PHP sur le serveur est limitée à 900 secondes (15 minutes).
Sur une machine avec un processeur à 1,8 GHz, la bascule pour un très gros lycée met 3 minutes.
Q : Je voudrais supprimer les comptes tests 00000 et proftest car les élèves les
connaissent et se donnent des items avec Proftest. En plus, ils ont changé le mot de
passe de Proftest. Que puis-je faire ?
L’admin peut agir sur ces deux comptes de test comme sur n’importe quel autre compte réel.
a) Vous pouvez vous contenter de changer les mots de passe de ces comptes. Rétablissez d’abord
le mot de passe de proftest par le menu admin puis « Gestion des professeurs » : dans la fiche
de proftest, réinitialisez le mot de passe à sa valeur par défaut (date de naissance). Ensuite,
logez-vous proftest et changez son mot de passe (il faut éventuellement accorder la possibilité
aux profs de changer leur mot de passe, au moins temporairement).
b) Vous pouvez supprimer ce ou ces comptes : menu Admin, Gestion des professeurs,
sélectionnez proftest. En bas de sa fiche se trouve le bouton supprimer.
CATICE – (DD – JM – SR – JMT)
17
MELIA v. 4 [30/03/05]

Documents pareils