Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente | |||
txs:contrib:framadate_p18:resolution_de_l_issue_125 [2020/02/22 02:47] – ↷ Liens modifiés en raison d'un déplacement. 94.130.216.182 | txs:contrib:framadate_p18:resolution_de_l_issue_125 [2020/09/16 11:24] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Résolution d'une issue 1 : #125====== | ||
+ | ===== Description de l' | ||
+ | ==== Lien ==== | ||
+ | https:// | ||
+ | |||
+ | ==== Texte ==== | ||
+ | < | ||
+ | Choose between "," | ||
+ | Please use ";" | ||
+ | </ | ||
+ | Après discussion la modification consistera en un choix, à l'aide d'un menu déroulant afin de sélectionner le séparateur. | ||
+ | |||
+ | |||
+ | ==== Justification du choix ==== | ||
+ | C'est une issue plus complexe que l' | ||
+ | |||
+ | |||
+ | Voici une copie d' | ||
+ | {{: | ||
+ | |||
+ | ===== Informations utiles | ||
+ | ===exportcsv.php === | ||
+ | Une page PHP // | ||
+ | |||
+ | ===implode === | ||
+ | La fonction PHP //implode// rassemble les éléments d'un tableau en une chaîne. | ||
+ | Cela nous permet ensuite de travailler sur ces éléments avec une variable. | ||
+ | Elle est souvent utilisé avec la fonction explode | ||
+ | ===explode === | ||
+ | La fonction PHP //explode// Coupe une chaîne en segments | ||
+ | L' | ||
+ | |||
+ | ===bootstrap === | ||
+ | La plupart du CSS est déjà créé grâce à du // | ||
+ | |||
+ | [[https:// | ||
+ | ==== Démarche des recherches | ||
+ | |||
+ | === Itération 1 : transformer | ||
+ | Pour cette première étape, le principe est très simple on remplace chaque "," | ||
+ | Il a été cependant intéressant de chercher à comprendre le fonctionnement en modifiant petit à petit chaque caractère. | ||
+ | |||
+ | < | ||
+ | $moment=explode(',', | ||
+ | </ | ||
+ | |||
+ | devient | ||
+ | |||
+ | < | ||
+ | $moment=explode(';', | ||
+ | </ | ||
+ | |||
+ | === Itération 2 : créer une variable contrôlant le séparateur | ||
+ | On sait maintenant comment contrôler manuellement le changement du séparateur, | ||
+ | |||
+ | < | ||
+ | if ($exportchoice==' | ||
+ | $delimiter=',' | ||
+ | } | ||
+ | else{ | ||
+ | $delimiter=';' | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Et on modifie | ||
+ | |||
+ | < | ||
+ | $moment=explode($delimiter, | ||
+ | </ | ||
+ | |||
+ | === Itération 3 : créer un formulaire html=== | ||
+ | On se situe maintenant dans un fichier template : '' | ||
+ | Les spécificités de ces fichiers sont expliqués [[https:// | ||
+ | |||
+ | En observant la page du côté client on observe qu'il y a 3 boutons : | ||
+ | *export | ||
+ | *menu déroulant : icône poubelle | ||
+ | |||
+ | Le menu déroulant (le petit logo poubelle) est similaire à la fonctionnalité que l'on désire créer. Le code est donc similaire en de nombreux points, au niveau des classes // | ||
+ | |||
+ | < | ||
+ | <ul class=" | ||
+ | <li> | ||
+ | <button type=" | ||
+ | </li> | ||
+ | <li> | ||
+ | <button class=" | ||
+ | </li> | ||
+ | <li class=" | ||
+ | <li> | ||
+ | <button class=" | ||
+ | </li> | ||
+ | </ul> | ||
+ | </ | ||
+ | |||
+ | Ainsi, La ligne servant à exporter le sondage : | ||
+ | |||
+ | < | ||
+ | <a href=" | ||
+ | </ | ||
+ | |||
+ | devient : | ||
+ | |||
+ | < | ||
+ | <div> | ||
+ | <button type=" | ||
+ | |||
+ | <ul class=" | ||
+ | <li> | ||
+ | <a href=" | ||
+ | class=" | ||
+ | </li> | ||
+ | <li> | ||
+ | <a href=" | ||
+ | class=" | ||
+ | </li> | ||
+ | </ul> | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | Une balise " | ||
+ | |||
+ | === Itération 4 : envoyer le choix html à $exportchoice === | ||
+ | |||
+ | Je me suis reporté au tutoriel de [[https:// | ||
+ | https:// | ||
+ | |||
+ | |||
+ | === Itération 5 :gérer les traductions === | ||
+ | |||
+ | Pour gérer les traductions, | ||
+ | |||
+ | **Modifier le fichier en.json** : | ||
+ | Ajouter dans le dossier / | ||
+ | |||
+ | **Modifier l' | ||
+ | Chaque contenu apparaissant à l' | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Merge request ===== | ||
+ | https:// | ||
+ | |||