abandonware.org

Création de la base de données magazines

Objectif
L'objectif est d'avoir une base de données SQL qui détaille le contenu des revues informatiques.

L'intérêt étant de faciliter le travail de recherche des visiteurs recherchant un contenu bien précis. Par exemple, si quelqu'un cherche la solution du jeu Monkey Island, grâce à la base de données, il pourra facilement et rapidement savoir dans quel magazine se trouve la solution.

Organisation
Cela fait depuis de longs mois que je dis que je vais m'occuper de cette base de données, mais finalement, je n'ai rien fait par manque de temps. Aussi, avec l'accord du président de l'association MO5.COM, nous avons convenu que ce serait l'association qui s'en chargerait.

L'association MO5.COM se chargera des choses suivantes :
- Création des pages d'administration nécessaires pour s'occuper de la base de données
- Hébergement de la base de données
- Remplissage de la base de données

De notre côté, j'espère que des membres de abw-mags seront motivés pour remplir cette base.

Concernant le copyright de cette base de données, j'avoue que je ne m'en préoccupe pas trop et donc, je laisse décider l'association MO5.COM s'ils veulent que cette base soit ou non sous copyright. La seule chose que je demande, c'est que notre site abw-mags puisse utiliser comme bon lui semble la base. Si par exemple, l'association souhaite que la base sous la propriété de l'association, cela ne me pose pas de problème tant que je suis autorisé à m'en servir librement.

Interface administrateur
Ceux qui auront accès aux outils d'administration de la base de données (les contributeurs donc), devront avoir un compte sur le site MO5.COM. En effet, l'interface devrait se servir de la base de données des membres du site.

En ce qui me concerne, il me faudra avoir la possibilité depuis l'interface de récupérer un fichier SQL contenant la base de données. Ainsi, je pourrai simplement et rapidement le placer sur le site des magazines (le serveur hébergeant abw-mags dispose de mySQL et donc, il est facile de charger une table dans la base de données du site).

Il faudrait aussi que je puisse pouvoir uploader la table SQL contenant toutes les fiches des magazines.
Exemple du fichier à la date du 10 juillet 2011 : mag_numeros.sql
On peut voir que chaque fiche de numéro dispose d'un "id" unique.
Pour moi, il est important que la base de données qui sera créée par MO5.COM ne contienne que des revues présentes sur le site (quand je dis présentes, cela ne signifie pas forcément téléchargeables). Si jamais quelqu'un souhaite lister le contenu d'une revue non présentes sur le site, il lui suffira de m'envoyer un mail (fred@lankhor.net) avec les infos sur la revue et si possible un scan de la couverture, et moi, je l'ajouterai tout de suite à la table.

La table porte le nom « mag_numeros.sql »
Champs :
• Id (numéro unique)
• numero_nom (nom de la revue)
• numero_numero (numéro de la revue)
• numero_date (date de sortie de la revue)
• numero_date2 (date de sortie de la revue)
• numero_hs (indique si le numéro est un hors série)
• numero_cd (indique si le numéro est un CD)

Pour ce qui est de l'interface proprement dit pour l'ajout de contenu dans la base, je fais confiance à l'équipe de MO5.COM pour faire quelque chose de bien et je les laisse donc faire comme bon leur semble.

Recherche sur abw-mags
Sur le site abw-mags, il y a une zone "recherche" dans laquelle, un visiteur peut taper le nom d'un jeu.
Dans un premier temps, le script du site transforme sa recherche pour supprimer tous les caractères spéciaux ou majuscules. Par exemple, un jeu ayant pour nom "L'Enfant des Ténèbres" serait transformé en "l enfant des tenebres".
Une fois que le nom du jeu a été mis dans le bon format, le script va chercher cette séquence de caractères dans l'ensemble de la base des tests de jeux, et va afficher tous les noms pouvant correspondre à ce que souhaite le visiteur. Par exemple, si le visiteur a tapé "Monkey", il peut lui être proposé les jeux "Monkey Ball", "Monkey Island", "Monkey Island 2", "Stars Monkeys", etc.
Il ne reste plus qu'au visiteur à cliquer sur le jeu qui l'intéresse pour avoir la liste de tout le contenu se rapportant à lui (tests, avant première, solution, info, etc.). Si le visiteur veut la solution du jeu, il n'aura qu'à cliquer sur le lien menant au magazine proposant cette solution.

A titre informatif, le site utilise actuellement un système de recherche qui a été mis en place il y a plusieurs années et qui n'est pas du tout pratique pour moi à gérer, ce qui fait que je l'ai laissé tomber.
Les fichiers constituant cet outil sont : mag_listegen4.sql , mag_listejoystick.sql , mag_listesolutions.sql et mag_listetitre.sql

Contenu de la base de données
Il s’agit de la table que vont remplir les membres (de MO5.COM ou de abw-mags).

Je vais simplement ici indiquer les champs dont j’ai besoin. Libre à celui qui s'occupera de la création de la base d’ajouter d’autres champs qu'il jugerait utiles.

Champs de la table :
• Id

• Nom du jeu
• Nom du jeu (orthographe simple)
• Type d’article
• Classification
• Plateforme/Machine
• Note
• Auteur

• Id_magazine
• Pages(s)

• Id_contributeur / pseudo_contributeur
• Date d’ajout

Explications :
- Id : C’est pour que chaque ajout dans la table ait un numéro d’identifiant unique

- Nom du jeu : par exemple, ce champ peut contenir « Monkey Island », « Shinobi », « Warcraft », « Dune », etc.
- Nom du jeu (orthographe simple) : Il s’agit d’un champ caché qui sera automatiquement rempli par un script. Le principe est de virer les majuscules, les caractères accentués et les caractères spéciaux. Par exemple, si le nom du jeu est « L’éternel », le champ contiendra « l eternel ». La recherche d’un jeu se fera sur ce champ, car ainsi, cela évitera qu’un utilisateur ne trouve pas un jeu à cause d’un problème d’écriture.
- Type d’article : il s’agira de dire s’il s’agit d’une avant première, d’un test, d’une solution, d’une info, etc.
- Plateforme/Machine : il s’agit d’indiquer si c’est un jeu Amiga, Atari, PC, Megadrive, Saturn, etc.
- Note : si c’est un test, cela peut être intéressant de savoir quelle note a obtenu le jeu (5 étoiles, 96%, 4/5, Tilt d’or, MegaStar, etc.)
- Auteur : Cela peut être intéressant de savoir qui a rédigé le test/article. Par exemple, grâce à cette info, on pourrait retrouver tous les articles rédigés par Marcus.

- Id_magazine : il s’agit de faire le lien avec ma table listant tous les magazines de mon site. Ainsi, je pourrai indiquer dans quel numéro se trouve l’article.
- Page(s) : si la personne le veut, elle pourra indiquer la (ou les) pages parlant du jeu.

- Id_contributeur / pseudo : il s’agit de faire le lien avec la table des membres de MO5.COM, et de savoir qui a fait cet ajout dans la base. Je pense que cela fera plaisir à ceux qui enrichiront la base de données de savoir que leur nom/pseudo sera marqué, afin de les remercier.
- Date d’ajout : il s’agit juste de savoir quand le contributeur a fait son ajout.

Je précise que pour moi, les noms des champs que j'indique ici n'est pas important. Par exemple, si à la place du champ "auteur", on met "createur", cela ne me dérange pas.

Info complémentaire
A la demande de certains membres, ce serait bien d'avoir une liste de tous ceux qui ont contribué à des magazines. Pour plus d'infos : http://forum.abandonware.org/viewtopic.php?f=14&t=3565.

  © 2002-2020   -   Mentions légales