offspot / package-requests

Request additions to Offspot here!
GNU General Public License v3.0
0 stars 0 forks source link

Magoe Education Guinée #34

Closed rgaudin closed 9 months ago

rgaudin commented 1 year ago

Application custom PHP/MySQL avec des cours en ligne, des QCMs, etc. On ne dispose que d'un ZIP avec le code de l'appli, les fichiers medias et un dump de la BDD.

Nécessité de contacter le développeur:

Mazoughou-cpu commented 1 year ago
rgaudin commented 1 year ago
  • utiliser SQLite au lieu de MySQL (rien ne semble nécessiter mysql) (l'application est développée pour le web. Personnellement je ne sais comment SQLite peut être utilisé pour le web)

Dans accesBDD.php, il y a par exemple:

$bdd = new PDO('mysql:host=localhost;dbname=db_fondation_orange;charset=utf8', 'root', '');

Je pense qu'il suffit de modifier par quelque chose comme ça où __DIR__."/db_fondation_orange.sqlite" est le chemin vers le fichier SQLite qui contiendra la BDD. Il existe des outils graphiques et en ligne de commande pour manipuler la BDD et importer vos dumps.

 $bdd = new PDO("sqlite:".__DIR__."/db_fondation_orange.sqlite");
Mazoughou-cpu commented 1 year ago
  • utiliser SQLite au lieu de MySQL (rien ne semble nécessiter mysql) (l'application est développée pour le web. Personnellement je ne sais comment SQLite peut être utilisé pour le web)

Dans accesBDD.php, il y a par exemple:

$bdd = new PDO('mysql:host=localhost;dbname=db_fondation_orange;charset=utf8', 'root', '');

Je pense qu'il suffit de modifier par quelque chose comme ça où __DIR__."/db_fondation_orange.sqlite" est le chemin vers le fichier SQLite qui contiendra la BDD. Il existe des outils graphiques et en ligne de commande pour manipuler la BDD et importer vos dumps.

 $bdd = new PDO("sqlite:".__DIR__."/db_fondation_orange.sqlite");

Mais base de donnée en MYSQL, comment la convertir en SQLITE ?

Mazoughou-cpu commented 1 year ago
  • utiliser SQLite au lieu de MySQL (rien ne semble nécessiter mysql) (l'application est développée pour le web. Personnellement je ne sais comment SQLite peut être utilisé pour le web)

Dans accesBDD.php, il y a par exemple:

$bdd = new PDO('mysql:host=localhost;dbname=db_fondation_orange;charset=utf8', 'root', '');

Je pense qu'il suffit de modifier par quelque chose comme ça où __DIR__."/db_fondation_orange.sqlite" est le chemin vers le fichier SQLite qui contiendra la BDD. Il existe des outils graphiques et en ligne de commande pour manipuler la BDD et importer vos dumps.

 $bdd = new PDO("sqlite:".__DIR__."/db_fondation_orange.sqlite");

Mais base de donnée en MYSQL, comment la convertir en SQLITE ?

Je vais faire des recherches sur comment migrer de MYSQL vers SQLITE. Si je rencontre des soucis, je vous le ferai part

Mazoughou-cpu commented 1 year ago
  • Website/Repository URL: https://magoe.fr/
  • License: TBD / FO
  • Desired Title: TBD
  • Desired Description: TBD
  • Desired PNG Icon (URL or attach one): TBD
  • Language(s) (ISO 639-3): fra
  • Docker image(s) available? No
  • Docker image or binary available for arm64 ? No
  • Update Strategy: TBD

Application custom PHP/MySQL avec des cours en ligne, des QCMs, etc. On ne dispose que d'un ZIP avec le code de l'appli, les fichiers medias et un dump de la BDD.

Nécessité de contacter le développeur:

  • utiliser SQLite au lieu de MySQL (rien ne semble nécessiter mysql)
  • Aucune documentation:

    • comment configurer la BDD
    • les autres informations
    • L'URL d'acces (si des liens sont générés, etc)
    • quels modules/extensions/configurations de PHP nécessaires)
    • Quels chemins doivent être servis directement (par le webserver et non PHP)
  • optimiser les images. Les images de niveau/ par exemple sont très lourdes et grandes: 2920x1521@300ppi pour 5.5MB.
  • le dossier imgUpload contient de nombreuses photos (bitmap donc) mais sont stockées en PNG ce qui nécessite beaucoup plus d'espace. Dans ce dossier, il existe de nombreux doublons
rgaudin commented 1 year ago

OK très bien ;

Pour ce qui est d'importer les données, je pense qu'il faut refaire un export en excluant les fonctionnalités propres à MySQL. Pour obtenir un format SQL le plus standard possible. Ensuite, il suffit d'executer le(s) fichier SQL obtenus ; soit en ligne de commande sqlite3 mago.db < dump.db, soit via un outil graphique (sqlitebrowser par exemple)

Mazoughou-cpu commented 1 year ago

Finalement j'ai pu travailler avec SQLite. Je vais vous ramener les fichier d'ici demain

rgaudin commented 10 months ago

@Mazoughou-cpu désolé pour l'attente, j'ai enfin pu regarder. Pour ce qui est de SQLite, ça semble fonctionner correctement ; merci!

Par contre, il y a beaucoup d'erreurs: des fichiers appelés qui n'existent pas notamment. J'en ai corrigé quelques uns (lorsque le fichier existe, mais ailleurs) mais je ne peux pas m'occuper de tous car il faudrait tester toutes les pages et surtout il y a des fichiers qui manquent.

La seule autre modification que j'ai faite concerne l'adresse attendue ($rootLink) qui n'est plus en dur mais qui est désormais getenv('MAGOE_URL'). Elle utilise donc la variable d'environnement MAGOE_URL à la place.

Merci de télécharger le dossier et de corriger tout ce qui peut l'être. Pour vérifier (ou pour corriger), le plus efficace est d'utiliser Docker (cf. https://docs.docker.com/engine/install/ si tu ne l'utilise pas) en montant le fameux dossier:

docker run -it -e MAGOE_URL=http://localhost:8888 -p 8888:80 -v /ton/chemin/magoe:/var/www/localhost/htdocs ghcr.io/offspot/magoe:dev

Avec cette commande (à modifier):


À coté de ça, et c'est indispensable, il nous faut les métadonnées pour que l'App rentre dans le catalogue:

Mazoughou-cpu commented 9 months ago

Méta données.docx logo_magoe_education_48x48

Mazoughou-cpu commented 9 months ago

Bonjour! Je pense avoir fait les corrections conformément aux recommandations. Voici donc en pièce jointe:

Mazoughou-cpu commented 9 months ago

le dossier corrigé est disponible ici : https://drive.google.com/file/d/1zWqisTBHCV99n3tTf-WtLS9WiCRzEiIT/view?usp=sharing

rgaudin commented 9 months ago

Merci ; c'est intégré