iCagenda : une solution pour importer depuis un fichier CSV (ou autre) ?

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] iCagenda : une solution pour importer depuis un fichier CSV (ou autre) ?

    Bonjour à tous !

    Apparemment, iCagenda ne permet pas encore d'importer les événements via des fichiers CSV.

    Connaissez-vous une solution pour y arriver ?

    (n'importe quoi. Pas forcément avec une interface. Même un script)
    Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

    Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez régulièrement ? Alors adhérer à l'AFUJ : https://www.joomla.fr/association/adherer

    Présentations : slides.woluweb.be | Coordonnées complètes : www.woluweb.be

  • #2
    salut,
    tu sait comment sont organisés tes tables sql ?
    Un script d'import serait faisable.
    Surtout si tu maitrise le format d'entrée.....
    Mon site en cours de construction avec de nouvelles catégories de documents...
    https://informaticien51.fr

    Commentaire


    • #3
      Salut lefabdu51 !

      Merci de ton intérêt

      Il y a plusieurs tables icagenda, mais je pense que tout ce qui nous intéresse (titre/alias, lien vers l'image, date, lieu, site et adresse) se trouve sur la même table, à savoir icagenda_events.
      Voici un exemple (aaargh, difficile de copier-coller un tableau dans cet éditeur visiblement...) :


      Code HTML:
           id asset_id ordering state approval site_itemid checked_out checked_out_time title alias access language hits created created_by created_by_alias created_by_email modified modified_by username catid image file displaytime weekdays daystime startdate enddate period dates next time place website email phone name city country address coordinate lat lng shortdesc desc metadesc params 13686 12273 10745 1 0 0 0 0000-00-00 00:00:00 How can Blockchain Change the Future? how-can-blockchain-change-the-future 1 * 742 2019-05-28 10:54:08 813     2019-05-28 10:54:08 813 hajarEUE2017 4 images/LOGOS/BRITISH_CHAMBER.jpg   1     2019-09-09 12:30:00 2019-09-09 14:00:00 a:1:{i:0;s:16:"2019-09-09 12:30";} a:1:{i:0;s:16:"0000-00-00 00:00";} 2019-09-09 12:30:00   British Chamber of Commerce in Belgium https://www.britishchamber.be/event/how-can-blockchain-change-future           Boulevard Bischoffsheim 11, 1000, Brussels, Belgium   0.0000000000000000 0.0000000000000000   <p style="text-align: justify;"><span style="font-size: 10pt;">We are pleased to welcome&nbsp;Mr. Pēteris Zilgalvis, Head of Unit, Digital Innovation and Blockchain, Digital Single Market, DG CONNECT   {"statutReg":"","accessReg":"","typeReg":"1","reg_deadline":"","maxReg":"","maxRlistGlobal":"","maxRlist":"","RegButtonText":"","RegButtonLink":"","RegButtonLink_Article":"","RegButtonLink_Url":"","RegButtonTarget":"0","atevent":"","first_published_and_approved":1}
      13686 12273 10745 1 0 0 0 0000-00-00 00:00:00 How can Blockchain Change the Future? how-can-blockchain-change-the-future 1 * 742 2019-05-28 10:54:08 813 2019-05-28 10:54:08 813 hajarEUE2017 4 images/LOGOS/BRITISH_CHAMBER.jpg 1 2019-09-09 12:30:00 2019-09-09 14:00:00 a:1:{i:0;s:16:"2019-09-09 12:30";} a:1:{i:0;s:16:"0000-00-00 00:00";} 2019-09-09 12:30:00 British Chamber of Commerce in Belgium https://www.britishchamber.be/event/how-can-blockchain-change-future Boulevard Bischoffsheim 11, 1000, Brussels, Belgium 0.0000000000000000 0.0000000000000000 <p style="text-align: justify;"><span style="font-size: 10pt;">We are pleased to welcome&nbsp;Mr. Pēteris Zilgalvis, Head of Unit, Digital Innovation and Blockchain, Digital Single Market, DG CONNECT {"statutReg":"","accessReg":"","typeReg":"1","r eg_ deadline":"","maxReg":"","maxRlistGlobal":"","maxR list":"","RegButtonText":"","RegButtonLink":"","Re gButtonLink_Article":"","RegButtonLink_Url":"","Re gButtonTarget":"0","atevent":"","first_published_a nd_approved":1}
      Comme toujours, mon approche est "keep it simple".
      Mieux vaut un petit script qui fait le job qu'une usine à gaz...

      A priori, les données seraient dans un fichier Excel, qui peut être exporté en csv.
      Puis il faut injecter le contenu dans le site (d'une manière aussi simple que possible pour un utilisateur lambda).

      <table class="table table-striped" id="dbr_results">
      <thead><tr>
      <td class="ghosted is_id">id</td>
      <td class="ghosted">asset_id</td>
      <td class="ghosted">ordering</td>
      <td class="ghosted">state</td>
      <td class="ghosted">approval</td>
      <td class="ghosted">site_itemid</td>
      <td class="ghosted">checked_out</td>
      <td class="ghosted">checked_out_time</td>
      <td class="">title</td>
      <td class="ghosted">alias</td>
      <td class="ghosted">access</td>
      <td class="ghosted">language</td>
      <td class="ghosted">hits</td>
      <td class="ghosted">created</td>
      <td class="ghosted">created_by</td>
      <td class="ghosted">created_by_alias</td>
      <td class="ghosted">created_by_email</td>
      <td class="ghosted">modified</td>
      <td class="ghosted">modified_by</td>
      <td class="ghosted">username</td>
      <td class="ghosted">catid</td>
      <td class="ghosted">image</td>
      <td class="ghosted">file</td>
      <td class="ghosted">displaytime</td>
      <td class="ghosted">weekdays</td>
      <td class="ghosted">daystime</td>
      <td class="ghosted">startdate</td>
      <td class="ghosted">enddate</td>
      <td class="ghosted">period</td>
      <td class="ghosted">dates</td>
      <td class="ghosted">next</td>
      <td class="ghosted">time</td>
      <td class="ghosted">place</td>
      <td class="ghosted">website</td>
      <td class="ghosted">email</td>
      <td class="ghosted">phone</td>
      <td class="ghosted">name</td>
      <td class="ghosted">city</td>
      <td class="ghosted">country</td>
      <td class="ghosted">address</td>
      <td class="ghosted">coordinate</td>
      <td class="ghosted">lat</td>
      <td class="ghosted">lng</td>
      <td class="ghosted">shortdesc</td>
      <td class="ghosted">desc</td>
      <td class="ghosted">metadesc</td>
      <td class="ghosted">params</td>
      </tr></tdead>
      <tbody>
      <tr><td class="db_value ghosted is_id"><div class="cell_content">13686</div></td><td class="db_value ghosted"><div class="cell_content">12273</div></td><td class="db_value ghosted"><div class="cell_content">10745</div></td><td class="db_value ghosted"><div class="cell_content">1</div></td><td class="db_value ghosted"><div class="cell_content">0</div></td><td class="db_value ghosted"><div class="cell_content">0</div></td><td class="db_value ghosted"><div class="cell_content">0</div></td><td class="db_value ghosted"><div class="cell_content">0000-00-00&nbsp;00:00:00</div></td><td class="db_value has_search"><div class="cell_content"><span class="search_string">How&nbsp;can&nbsp;Blockchain &nbsp;Change&nbsp;the&nbsp;Future?</span><span class="replace_string"></span></div></td><td class="db_value ghosted"><div class="cell_content">how-can-blockchain-change-the-future</div></td><td class="db_value ghosted"><div class="cell_content">1</div></td><td class="db_value ghosted"><div class="cell_content">*</div></td><td class="db_value ghosted"><div class="cell_content">742</div></td><td class="db_value ghosted"><div class="cell_content">2019-05-28&nbsp;10:54:08</div></td><td class="db_value ghosted"><div class="cell_content">813</div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content">2019-05-28&nbsp;10:54:08</div></td><td class="db_value ghosted"><div class="cell_content">813</div></td><td class="db_value ghosted"><div class="cell_content">hajarEUE2017</div></td><td class="db_value ghosted"><div class="cell_content">4</div></td><td class="db_value ghosted"><div class="cell_content">images/LOGOS/BRITISH_CHAMBER.jpg</div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content">1</div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content">2019-09-09&nbsp;12:30:00</div></td><td class="db_value ghosted"><div class="cell_content">2019-09-09&nbsp;14:00:00</div></td><td class="db_value ghosted"><div class="cell_content">a:1:{i:0;s:16:"2019-09-09&nbsp;12:30";}</div></td><td class="db_value ghosted"><div class="cell_content">a:1:{i:0;s:16:"0000-00-00&nbsp;00:00";}</div></td><td class="db_value ghosted"><div class="cell_content">2019-09-09&nbsp;12:30:00</div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content">British&nbsp;Chamber&nbsp;of& nbsp;Commerce&nbsp;in&nbsp;Belgium</div></td><td class="db_value ghosted"><div class="cell_content">https://www.britishchamber.be/event/how-can-blockchain-change-future</div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content"> Boulevard&nbsp;Bischoffsheim&nbsp;11,&nbsp;1000,&n bsp;Brussels,&nbsp;Belgium</div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content">0.0000000000000000</div></td><td class="db_value ghosted"><div class="cell_content">0.0000000000000000</div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content">&lt;p&nbsp;style="text-align:&nbsp;justify;"&gt;&lt;span&nbsp;style="font-size: 10pt;"&gt;We&nbsp;are&nbsp;pleased&nbsp;to&nbsp;we lcome&amp;nbsp;Mr.&nbsp;Pēteris Zilgalvis,&nbsp;Head&nbsp;of&nbsp;Unit,&nbsp;Digit al&nbsp;Innovation&nbsp;and&nbsp;Blockchain, Digital&nbsp;Single&nbsp;Market,&nbsp;DG&nbsp;CONN ECT<span class="toggle-trimmed" id="trimmed-5d73aa51cfdcf-toggle"></span><span class="trimmed" id="trimmed-5d73aa51cfdcf">, and&amp;nbsp;Mrs&nbsp;Susi&nbsp;Förschler,&nbsp;As sociate&nbsp;at&nbsp;DFW&nbsp;Germany, who&nbsp;will&nbsp;take&nbsp;us&nbsp;through&nbsp; the&nbsp;current&nbsp;developments and&nbsp;what&nbsp;the&nbsp;future&nbsp;holds&nbsp ;for&nbsp;blockchain&nbsp;in&nbsp;the European&nbsp;Single&nbsp;Market.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;<br>
      &lt;p&nbsp;style="text-align:&nbsp;justify;"&gt;&lt;span&nbsp;style="font-size: 10pt;"&gt;This&nbsp;event&nbsp;is&nbsp;exclusively &nbsp;open&nbsp;for&amp;nbsp;&lt;strong&gt;memb ers &lt;/strong&gt;.&lt;/span&gt;&lt;/p&gt;<br>
      &lt;p&nbsp;style="text-align:&nbsp;justify;"&gt;&lt;span&nbsp;style="font-size: 10pt;"&gt;All&nbsp;publically&nbsp;available&nbsp; information&nbsp;&lt;a&nbsp;href="https://www.britishchamber.be/event/how-can-blockchain-change-future"&gt;HERE&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;<br>
      &lt;p&nbsp;style="text-align:&nbsp;justify;"&gt;&lt;a&nbsp;href="https://www.britishchamber.be/event/inscription/1668313000012430003"&gt;&lt;span style="font-size:&nbsp;10pt;"&gt;REGISTRATION&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;<br>
      &lt;p&nbsp;style="text-align:&nbsp;justify;"&gt;&lt;/p&gt;<br>
      &lt;p&nbsp;style="text-align:&nbsp;justify;"&gt;&lt;span&nbsp;style="font-size: 10pt;"&gt;#EUevents&lt;/span&gt;&lt;/p&gt;</span></div></td><td class="db_value ghosted"><div class="cell_content"><span class="null">&nbsp;</span></div></td><td class="db_value ghosted"><div class="cell_content">{"statutReg":"","accessReg":" ","typeReg":"1","reg_deadline":"","maxReg":"", "max RlistGlobal":"","maxRlist":"","RegButtonText":""," RegButtonLink":"","RegButtonLink_Article":"","RegB uttonLink_Url":"","Re<span class="toggle-trimmed hide-trimmed" id="trimmed-5d73aa51cfeda-toggle"></span><span class="trimmed" id="trimmed-5d73aa51cfeda" style="display: inline;">gButtonTarget":"0","atevent":"","first_pu blished_and_approved":1}</span></div></td></tr>
      </tbody>
      </table>
      Dernière édition par woluweb à 07/09/2019, 15h08
      Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

      Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez régulièrement ? Alors adhérer à l'AFUJ : https://www.joomla.fr/association/adherer

      Présentations : slides.woluweb.be | Coordonnées complètes : www.woluweb.be

      Commentaire


      • #4
        Bonjour Marc

        Si ce n'est qu'une et une seule table, alors un simple INSERT INTO en SQL ferait le job.

        Tu aurais un fichier en Excel avec autant de colonnes qu'il faut importer et une dernière colonne qui contiendrait une formule telle que ="insert into" où tu auras une concaténation des champs.

        Du coup tu as tes instructions sql qu'il suffirait de copier coller dans un écran phpmyadmin (faut donc que l'utilisateur ait accès).

        Cela te semble jouable ?
        woluweb likes this.
        Christophe (cavo789)
        Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)
        Développeur de marknotes, logiciel de gestion de prises de notes avec interface web et de multiples convertisseur https://github.com/cavo789/marknotes
        Mes logiciels OpenSource : https://www.avonture.be

        Commentaire


        • #5
          Bonne idée Christophe ;-)
          Faut juste gérer l'ID incremental.
          Tu penses qu'on pourrait aussi mettre le fichier sql par ftp dans le dossier où joomla met ses updates sql ?
          Pcq alors c'est encore plus simple pour un utilisateur lambda que de passer par phpmyadmin...
          Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

          Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez régulièrement ? Alors adhérer à l'AFUJ : https://www.joomla.fr/association/adherer

          Présentations : slides.woluweb.be | Coordonnées complètes : www.woluweb.be

          Commentaire


          • #6
            Pour l'ID, il suffit de laisser le champ vide : l'insertion de la ligne créera cet ID automatiquement.
            woluweb likes this.
            "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
            MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr hébergés chez PHPNET - sites perso chez PlanetHoster + sites gérés chez 1and1 et OVH

            Commentaire


            • #7
              Bonsoir

              Oui, l'auto-increment est un nombre qui est géré tout seul pour le système. On l'ignore complètement dans l'instruction SQL.

              Pour ta question "mettre le fichier sql par ftp dans le dossier où joomla met ses updates sql ?" je n'en ai pas la moindre idée; je ne sais pas trop comment Joomla gère cela mais oui, c'est une bonne piste puisque les sites d'exemple de Joomla se font en effet ainsi.

              Si tu as besoin d'un coup de main en Excel, contacte-moi.

              Bonne soirée.
              woluweb likes this.
              Christophe (cavo789)
              Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)
              Développeur de marknotes, logiciel de gestion de prises de notes avec interface web et de multiples convertisseur https://github.com/cavo789/marknotes
              Mes logiciels OpenSource : https://www.avonture.be

              Commentaire


              • #8
                Le modèle icagenda est très simple.

                Avec des ordres INSERT tu devrais t'en sortir très facilement.

                Manu
                woluweb likes this.

                Commentaire


                • #9
                  Envoyé par elecoest Voir le message
                  Avec des ordres INSERT tu devrais t'en sortir très facilement.
                  Bonjour,

                  Cela me semble compliqué pour un utilisateur lambda de faire le traitement sous excel puis d'exporter en sql pour l'inserer dans un repertoire du site ou alors je n'ai pas tout compris.

                  Pour répondre à la question initiale, en importation de CSV, on n'a pas le droit à l'erreur car on risque d'endommager la table des evenements.
                  tout dépend des délimitations, du format du fichier pour les accents (UTF-8 ?)
                  On peut très bien se retrouver avec des décalages ou un mauvais format de date, etc.

                  Il est possible de développer un bouton d'import en backend ou front sans toucher au code du composant icagenda mais ce n'est pas gratuit.
                  Tu peux toujours faire une demande sur le forum : https://forum.joomla.fr/forum/ressou...nde-de-service ou sur un site spécialisé.

                  Bien que prévu pour d'autres composants, CSVImproved de RolandD (aujourd'hui RO CSVI) permet de définir un template personnalisé import/export avec toutes les vérifications nécessaires.
                  Il est capable d'importer un fichier CSV quotidiennement (via un cron job) mais le coût du composant le destine à une opération régulière. Cela peut également servir de comparaison à un développement spécifique.



                  Si c'est occasionnel, je préconise phpmyadmin, capable également d'importer du csv en tenant compte bien évidemment des erreurs possibles donc agir avec prudence (sauvegarde, vérification...). Ne pas oublier également d'importer également les catégories d’événements définis dans une autre table.






                  Dernière édition par daneel à 09/09/2019, 12h28
                  woluweb likes this.
                  Joomla User Group (JUG) Lille : https://www.facebook.com/groups/JUGLille/

                  Commentaire


                  • #10
                    Merci à tous pour les suggestions.

                    daneel figure-toi que j'avais justement pris contact avec Roland Dalmulder. il m'a confirmé que RO CSVI n'intègre pas iCagenda (mais bien d'autres composants)... mais qu'on peut évidemment faire du sur mesure.

                    Bref, pour mon petit cas, j'ai testé la piste du fichier Excel :
                    La personne saisit ses données sur l'onglet 1.
                    Sur l'onglet 2, je manipule les données, par exemple pour ajouter les ' ' autour des valeurs qui l'exigent etc, pour faire un regex pour créer un alias etc
                    En fin de chaque ligne, j'ajoute une formule qui concatène l'ensemble des champs pour un item (événement) :
                    Code:
                    ="("&JOINDRE.TEXTE(", ";FAUX;'output table'!A2:AU2)&")"
                    Puis, je n'ai plus qu'à concaténer
                    1. le INSERT INTO (...) avec
                    2. avec la concaténation de tous les items
                    Code:
                    =SUBSTITUE(B1&" "&JOINDRE.TEXTE(",";VRAI;C:C)&";";CAR(160);CAR(32))
                    Avec une grosse subtilité : Excel utilise un autre "espace" que l'espace dont on a besoin dans PHPMyAdmin, donc je substitue car(160) par car(32)

                    Bref, au final l'utilisateur
                    a. saisit ses données dans Excel
                    b. copie une cellule finale
                    c. clique sur le lien PHPMyAdmin qui le mène directement dans sa bdd, où il clique sur l'onglet SQL, colle le query et clique sur Execute

                    Voilà pour le process.

                    PS : j'avais tenté de mettre le query dans un fichier .sql à uploader dans /www/administrator/components/com_admin/sql/updates/mysql
                    En effet, alors la "mise à jour" apparaît dans /administrator/index.php?option=com_installer&view=database
                    ... mais quand je clique sur le bouton "Fix" dans Joomla, rien ne change dans mes tables
                    Est-ce qu'il y a une subtilité pour faire marcher cela ? Cela éviterait de passer par PHPMyAdmin
                    cavo789 likes this.
                    Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

                    Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez régulièrement ? Alors adhérer à l'AFUJ : https://www.joomla.fr/association/adherer

                    Présentations : slides.woluweb.be | Coordonnées complètes : www.woluweb.be

                    Commentaire


                    • #11
                      Et pourquoi pas un script d'import sql via une tache cron toutes les heures ?
                      comme ca, tu as juste a exporter ton fichier directement au format csv au lieu de passer par le format excel....

                      note: un export csv ne concernes que la premiere feuille. On ne peut exporter de fichiers avec plusieures.
                      et a le placer au bon endroit avec filezilla.

                      Grace a la tache cron, tu est sur de l'import des modifs...

                      Automatiser au max, ca permet de gagner du temps et faire autre chose.
                      Dernière édition par lefabdu51 à 13/09/2019, 07h47
                      woluweb likes this.
                      Mon site en cours de construction avec de nouvelles catégories de documents...
                      https://informaticien51.fr

                      Commentaire


                      • #12
                        Merci lefabdu51 , bonne idée la tâche cron sur la requête SQL
                        Mais j'ai jamais fait ça par contre.
                        Tu aurais un exemple de fichier sql ? Peut-on lancer le fichier sql directement depuis la tâche cron ou faut-il p ex un fichier PHP qui va appeler le sql ?

                        Note : il y a peut-être moyen de faire fonctionner ma piste de mettre le sql /www/administrator/components/com_admin/sql/updates/mysql et puis dans Joomla de cliquer sur "fix database".

                        J'avais changé le nom de ma table de

                        Code:
                        INSERT INTO `srhoq_icagenda_events` (`id`, `asset_id`, `ordering`, `state`, `approval`, `site_itemid`, `checked_out`, `checked_out_time`, `title`, `alias`, `access`, `language`, `hits`, `created`, `created_by`, `created_by_alias`, `created_by_email`, `modified`, `modified_by`, `username`, `catid`, `image`, `file`, `displaytime`, `weekdays`, `daystime`, `startdate`, `enddate`, `period`, `dates`, `next`, `time`, `place`, `website`, `email`, `phone`, `name`, `city`, `country`, `address`, `coordinate`, `lat`, `lng`, `shortdesc`, `desc`, `metadesc`, `params`) VALUES ('', 0, 0, 1, 1, 613, 0, '0000-00-00 00:00:00', 'Test Marc 1', 'testmarc1', 1, '*', 1, '2019-09-11 13:04:48', 0, '', 'marc@woluweb.be', '0000-00-00 00:00:00', 0, 'Test Events', 1, 'images/icagenda/frontend/images/cloudy-field-280x244-2.jpg', '', 1, '', '', '2019-11-30 20:00:00', '2019-11-30 21:00:00', 'a:1:{i:0;s:16:\"2019-11-30 20:00\";}', 'a:1:{i:0;s:16:\"0000-00-00 00:00\";}', '2019-11-30 20:00:00', '', 'The place to be', 'https://www.google.com', 'test@test.com', '32475123456', '', '', '', '', '', 0.0000000000000000, 0.0000000000000000, '', '<p>Text</p>', '', ''),('', 0, 0, 1, 1, 613, 0, '0000-00-00 00:00:00', 'Test Marc 2', 'testmarc2', 1, '*', 1, '2019-09-11 13:04:48', 0, '', 'marc@woluweb.be', '0000-00-00 00:00:00', 0, 'Test Events', 1, 'images/icagenda/frontend/images/cloudy-field-280x244-2.jpg', '', 1, '', '', '2019-12-30 22:00:00', '2019-12-30 23:00:00', 'a:1:{i:0;s:16:\"2019-12-30 22:00\";}', 'a:1:{i:0;s:16:\"0000-00-00 00:00\";}', '2019-12-30 22:00:00', '', 'The place to be', 'https://www.google.com', 'test@test.com', '32475123456', '', '', '', '', '', 0.0000000000000000, 0.0000000000000000, '', '<p>Text</p>', '', '');
                        en
                        Code:
                        INSERT INTO `#__icagenda_events`
                        Cliquer sur "fix database' donne le message vert de confirmation... mais je ne vois pas de changement effectif.

                        Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

                        Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez régulièrement ? Alors adhérer à l'AFUJ : https://www.joomla.fr/association/adherer

                        Présentations : slides.woluweb.be | Coordonnées complètes : www.woluweb.be

                        Commentaire


                        • #13
                          Salut,

                          autre solution : tu as une documentation de joomla.org sur le développement d'un composant avec import CSV ou xlsx

                          models / helloimport.php
                          Code PHP:

                          $colnames    
                          = array("id""asset_id""ordering"); // nom des colonnes, liste à compléter...
                          $table    $db->quoteName('#__icagenda_events'); // nom de la table 
                          https://docs.joomla.org/J3.x:Develop...nd_xlsx_import



                          woluweb likes this.
                          Joomla User Group (JUG) Lille : https://www.facebook.com/groups/JUGLille/

                          Commentaire


                          • #14
                            Envoyé par woluweb Voir le message
                            ...il y a peut-être moyen de faire fonctionner ma piste de mettre le sql /www/administrator/components/com_admin/sql/updates/mysql et puis dans Joomla de cliquer sur "fix database".

                            J'avais changé le nom de ma table de

                            ...

                            Cliquer sur "fix database' donne le message vert de confirmation... mais je ne vois pas de changement effectif.
                            Cela ne peux pas marcher ainsi, il faut qu'il y ait une incohérence entre la version du fichier sql de update/sql et le numéro de version de l'extension figurant dans la table #__schemas.
                            En général id dans la table extension = 700 (extension_id dans #__schemas et dans #__extensions pour "files_joomla") pour identifier le framework de Joomla et donc la version de ses tables.

                            Actuellement si ton site est à jour on trouve 3.9.10-2019-07-09 dans la rubrique version_id dans la table #__schemas pour extension_id = 700 et 3.9.10-2019-07-09.sql est bien le dernier sql dans le dossier ../update/sql/mysql de l'admin.
                            Joomla ne trouvera donc pas d’incohérence dans la structure de la base pour le core.

                            De plus c'est risqué de jouer ainsi avec le core.

                            Si tu veux utiliser cette technique, il te faut faire une petite extension à toi et changer à chaque fois le numéro de version dans le fichier xml "manifest" de ton extension tout en créant un nouveau fichier sql "update" pour que l’installateur de Joomla mette le numéro de version de l'extension et le numéro de version des tables associé à cette version de l'extension à jour et exécute éventuellement tous les fichiers sql nécessaires qui seraient présents dans le dossier sql/update/.. dans la partie admin de l'extension.
                            Dernière édition par roland_d_alsace à 13/09/2019, 11h32
                            woluweb likes this.
                            A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
                            Rejoignez le Joomla Users Groupe Alsace...
                            roland_d_alsace va-t-il devenir roland_du_grand_est ?

                            Commentaire


                            • #15
                              salut, une idée
                              pourquoi ne pas créer un dossier avec un manifest et utiliser le com_installer (onglet extension > installation) pour installer le fichier sql ?
                              tu crées un dossier contenant les éléments d'installation dont le fichier sql à uploader.
                              tu crées le zip avec le contenu.
                              Et tu passe par l'installeur d extensions.....
                              C'est un moyen simple d'importer du sql.
                              Vu que ce n'est qu un import sql tu ne laisse aucune trace dans Joomla, donc tu n as rien a changer dans tes dossiers, sauf le contenu du fichier sql.
                              woluweb likes this.
                              Mon site en cours de construction avec de nouvelles catégories de documents...
                              https://informaticien51.fr

                              Commentaire

                              Annonce

                              Réduire
                              1 sur 2 < >

                              C'est [Réglé] et on n'en parle plus ?

                              A quoi ça sert ?
                              La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                              Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                              Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                              Comment ajouter la mention [Réglé] à votre discussion ?
                              1 - Aller sur votre discussion et éditer votre premier message :


                              2 - Cliquer sur la liste déroulante Préfixe.

                              3 - Choisir le préfixe [Réglé].


                              4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                              2 sur 2 < >

                              Assistance au forum - Outil de publication d'infos de votre site

                              Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                              Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                              Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                              UTILISER À VOS PROPRES RISQUES :
                              L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                              Problèmes connus :
                              FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                              Installation :

                              1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                              Archive zip : https://github.com/AFUJ/FPA/zipball/master

                              2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                              3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                              4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                              5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                              6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                              et remplacer www. votresite .com par votre nom de domaine


                              Exemples:
                              Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/
                              Pour executer le script: http://www..com/fpa-fr.php

                              Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/cms/
                              Pour executer le script: http://www..com/cms/fpa-fr.php

                              En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                              Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                              Voir plus
                              Voir moins

                              Partenaire de l'association

                              Réduire

                              Hébergeur Web PlanetHoster
                              Travaille ...
                              X