Ce paquetage permet de gérer un trombinoscope, dans lequel les membres s'incrivent tous seuls, sous la supervision d'un administrateur. Il peut s'installer sur un serveur web qui a php et mysql. Il a été écrit en se basant sur "the Trombinoscope" de David FHIMA. Liste des fichiers : ALIRE.txt : ce fichier index.php : page affichant tout le trombinoscope trombines.php : page affichant uniquement les photos du trombinoscope affinfo.php : page affichant les informations complémentaires pour un membre inser.php : page permettant de créer ou de modifier une fiche creation.php : création de la table dans la base de données (à n'utiliser qu'une fois) .config.php : fichier de configuration contenant les mots de passe (à créer) config.php.local : modèle de .config.php pour une installation locale config.php.free : modèle de .config.php pour une installation chez free.fr photo/creetn : script bash qui réduit les photos à 200 points de large photo/creeaff : script bash qui crée le fichier aff.html qui affiche les photos originales à côté de leur réduction photo/question_mark.jpg : photo par défaut Installation en local sous linux. 1) installez apache 2) installez mysql 3) Renommez config.php.local en .config.php et complétez le : affinfo.php creation.php index.php inser.php sauve.php trombines.php 4) Mettez tous les fichiers à leur place , par exemple : /var/www/html/trombinoscope/index.php /var/www/html/trombinoscope/trombines.php /var/www/html/trombinoscope/inser.php /var/www/html/trombinoscope/affinfo.php /var/www/html/trombinoscope/.config.php /var/www/html/trombinoscope/creation.php /var/www/html/trombinoscope/sauve.php /var/www/html/trombinoscope/photo/question_mark.jpg /var/www/html/trombinoscope/photo/creetn /var/www/html/trombinoscope/photo/creeaff 5) Créez la base de données. firefox http://localhost/trombinoscope/creation.php?motdepasse=xxxyyyzzz Pour créer la base de données et la table, vous pouvez aussi taper directement des commandes comme : mysqladmin -u root create trombibase mysql -u root trombibase drop table trombotable; CREATE TABLE trombitable ( id int NOT NULL auto_increment, date varchar(20) NOT NULL, nom varchar(50) NOT NULL, prenom varchar(50) NOT NULL, pupitre char(1) NOT NULL, phone varchar(55) NOT NULL, adresse varchar(200) NOT NULL, email varchar(55) NOT NULL, info varchar(200) NOT NULL, information varchar(2000) NOT NULL, trombine varchar(50) NOT NULL, motdep varchar(20) NOT NULL, valid bigint(1) DEFAULT '0' NULL, PRIMARY KEY (id) ); quit 6) Lancez le trombinoscope comme un utilisateur normal : firefox http://localhost/trombinoscope/index.php ou comme administrateur : firefox http://localhost/trombinoscope/index.php?motdepasse=xxxyyyzzz Vous pouvez aussi taper le mot de passe de l'administrateur dans la fenêtre "mot de passe" du formulaire "modifier une fiche". Installation chez free.fr 1) Procurez vous un compte chez free (par exemple mon_compte@free.fr mot de passe : monpw) 2) Activez mysql pour ce compte (prévoir une journée d'attente) 3) Renommez config.php.free en .config.php et complétez le : Notez que chez free, le nom de la base doit être le login. 4) Envoyez tous les fichiers par ftp ftp ftpperso.free.fr ... mon_compte ... monpw mkdir trombinoscope cd trombinoscope put index.php put trombines.php put inser.php put affinfo.php put creation.php put sauve.php put .config.php mkdir photo put photo/question_mark.jpg quit 5) Créez la base de données. firefox http://mon_compte.free.fr/trombinoscope/creation.php?motdepasse=admin 6) Lancez le trombinoscope comme un utilisateur normal : firefox http://mon_compte.free.fr/trombinoscope/index.php ou comme administrateur : firefox http://mon_compte.free.fr/trombinoscope/index.php?motdepasse=admin Vous pouvez aussi taper le mot de passe de l'administrateur dans la fenêtre "mot de passe" du formulaire "modifier une fiche". 7) Pour sauvegarder ou récupérer en local le trombinoscope il faut - récupérer les photos par ftp d'un répertoire photo/ à l'autre par la commande : mget * - lancer le trombinoscope comme administrateur : firefox http://mon_compte.free.fr/trombinoscope/index.php?motdepasse=admin cliquer avec le bouton de droite sur "sauve" et enregitrer sauve.php sous le nom trombi9nov2006 pour récupérer la base de données mysql. 8) Créez les images réduites dans le répertoire local photo/ par la commande : sh creetn *.jpg *.png 9) Renvoyez les images réduites par ftp avec la commande : mput tn.* 10) Si vous voulez restaurer la base de données mysql à partir de la sauvegarde du 9 novembre 2006, allez dans http://phpmyadmin.free.fr/phpMyAdmin/ Tapez votre login : mon_compte et votre mot de passe : monpw Sélectionnez la base de données mon_compte. Sélectionnez la table trombino. Videz la (Il y a un bouton pour cela). Dans la fenêtre "exécuter une commande sql à partir d'un fichier" sélectionnez le fichier trombi9nov2006 et exécutez le. Sécurité 1) Le seul fichier sensible est le fichier .config.php qui contient en clair le mot de passe de l'administrateur et le mot de passe du compte free. Comme son nom commence par un point, il n'est pas visible par http. De plus comme son extension est .php il s'exécute sur le serveur et on ne peut pas récupérer les données qu'il contient. 2) Comme les membres peuvent s'inscrire tous seuls, le site risque peut-être d'être saturé par un utilisateur indélicat qui créerait plein de fiches. Il est donc recommandé de mettre dans le répertoire trombinoscope/ un fichier .htaccess qui le protégera par un mot de passe, que vous communiquerez uniquement aux personnes susceptibles de s'incrire légitimement dans ce trombinoscope, et que vous pourrez changer en cas d'attaque. .htaccess : PerlSetVar AuthFile trombinoscope/.htpasswd AuthName "Trombinoscope de ..." AuthType Basic require user trombi .htpasswd : trombi:xyzxyzxyz Mode d'emploi Un membre peut créer et modifier sa fiche tout seul. Lors de la création, il doit choisir un mot de passe, qu'il devra fournir quand il voudra modifier sa fiche. Les fiches récemment créées ou modifiées n'apparaissent pas dans le trombinoscope complet, elles doivent d'abord être validées par l'administrateur. Celui-ci s'identifie par son mot de passe. Il voit alors toutes les fiches, y compris celles qui ne sont pas validées, et peut les modifier, les valider ou les effacer à son gré. Modifications Vous pouvez librement utiliser et modifier ce paquetage. Vous pouvez trouver de la documention sur php ou mysql ou javascript sur des pages web telles que : http://us3.php.net/mysql_insert_id http://fr3.php.net/manual/en http://dev.mysql.com/doc/refman/5.0/en/insert.html http://www.infimum.dk/HTML/JSwindows.html