Utilisation du plugin CSV_IMPORT

Comment devenir fainéant intelligemment ou comment importer un fichier CSV dans spip sans tout casser ?

Ce plugin va vous permettre d’importer et d’exporter les données de vos tables SPIP.

Après avoir longtemps cherché cette fonction c’est encore une fois IRC channel #spip qui est venu à mon secours, que je remercie en préambule => cy_altern, et sans qui je serais nul part ;-)

Avertissement : Ces explications se veulent les plus précises possibles, mais l’auteur ne saurait être tenu pour responsable en cas de mauvaise manipulation qui pourrait entrainer une perte des données de la base. Ayez dans tous les cas un dump sous la main, au cas où...

Matériel nécessaire

SPIP 1.9.2 avec les plugins

  • cfg : moteur de configuration, version : 1.7.5
  • CSVImport, version : 0.1

SPIP 2.0.0
A partir de SPIP 2.0, CSV Import requiert le plugin SPIP Bonux

-  Un fichier CSV ou autre fichier tabulaire avec les données à ajouter.

-  OpenOffice.org Calc.

Note : j’avais commencé avec Excel mais certaines fonctions n’existant pas ou ne sachant pas les utiliser..., je me suis rabattu sur OpenOffice.org Calc.

Note 2 : dans la version pour SPIP 2, si l’on souhaite gérer aussi les tables des jointures (spip_auteurs_articles par ex), ajouter la ligne suivante dans le fichier mes_options.php du site :
$GLOBALS['csvimport_tables_jointures'] = true;

Installation et configuration du plugin

Après avoir récupéré le zip de CSV Import (http://files.spip.org/spip-zone/csv...), suivez la procédure standard d’installation / activation (cf la documentation officielle pour plus de détails).

L’exemple pris ici est l’importation d’articles, honnêtement je n’ai pas tout testé mais je suppose que le restant fonctionne également.

Rendez-vous sur l’icone « Edition », sous menu « Import CSV »

Vous arrivez sur la page suivante, qui est presque vide d’ailleurs !

Cliquez sur « Administrez les tables », une nouvelle page s’ouvre ayant cette allure-ci.

Puisque nous parlons d’articles ici et pour la bonne compréhension du tutoriel, je vous demande de cocher toutes les cases de la table « articles », comme ceci. Si vous êtes intéressé par d’autres tables ou champs, la démarche devrait être la même il me semble.

Après avoir tout coché, il faut valider votre choix avec le bouton « Enregistrer » qui se trouve dans le bas de la page.

A ce stade un grand pas est déjà fait, mais courage nous ne sommes pas au bout de nos peines mais le jeu en vaut la chandelle...
Retournons sur « Import CSV », nous avons à présent quelque chose de similaire. Les chiffres, dates et heures seront différents naturellement.

Pour continuer, nous allons exporter la structure cible d’ARTICLES en CSV pour choisir les champs d’importation.
Cliquez sur la droite « Télécharger ». Une nouvelle fenêtre s’ouvre.

Choisissez votre format et enregistrez le fichier sur votre disque dur.

Préparation du CSV

Lancez OpenOffice.org Calc

Cliquez sur « Fichier », « Ouvrir »
Rendez-vous dans le dossier où vous avez sauvé le fichier précédemment.

Lors de l’ouverture il vous demande quelques précisions. Ici on renseignera le type de séparateur, ci-dessus j’avais choisi la virgule, pas de raison d’en changer, il reste à choisir le format du texte UTF-8 en l’occurrence.

Vous devez obtenir quelque chose de similaire.

Analysez bien la structure de votre tableau, c’est lui qui révèlera la forme et les champs à compléter. Il vous reste à compléter ou remplacer les colonnes, les lignes et les cellules afin de préparer le meilleur fichier CSV pour votre spip.

Importation des données dans le CSV

Ça y est vous avez vu à quoi ressemble une table Spip, il vous reste à « copier/coller » les données que vous voulez ajouter dans la table « articles ».

Ici pour l’exemple, le surtitre est le titre de l’article en anglais : le titre est le titre de l’article avec un numéro d’ordre, et le sous-titre est le titre de l’article en néerlandais, mais tout est possible.

Remarques :
-  Vous avez intérêt à remplir un maximum de champs, attention néanmoins à respecter les formats initiaux, ainsi que les automatismes d’incrémentations et autres.
-  Ce qui est à éviter absolument c’est d’indiquer des références qui n’existent pas... par exemple rubrique 4 alors qu’elle n’existe pas ou pas encore...
-  Il est naturellement possible de pousser le vice encore plus loin, avec par exemple pour classer vos titres d’articles par num_titre, de concaténer par exemple : =CONCATENER(A7  . » ;D7) dans votre tableur préféré pour obtenir un champ 01. Mon premier titre. Je laisse à votre imagination le moyen de devenir encore plus fainéant que moi à l’aide de toutes les fonctions disponibles dans votre tableur.

Exportation des données

Voici votre fichier CSV bien complété et prêt à être exporté à son tour.

Dans OpenOffice.org Calc, cliquez sur « Fichier », « Enregistrer sous » et choisissez Type « .CSV » et cochez la case « éditez les paramètres de filtre » et précisez l’endroit de sauvegarde.

Vous arriverez alors sur un autre écran.

Encore une fois, choisissez bien les différentes options, ici en l’occurrence, Jeux de caractère : « UTF-8 », séparateur « , ». ET validez sur « OK ».

Votre fichier a été créé et est stocké sur votre disque dur.

Importation dans SPIP

Rendez-vous dans votre spip.
Retournons sur « Import CSV ».

Cliquez sur la gauche ici « spip-articles ». Une nouvelle fenêtre s’ouvre.

Indiquez où se trouve votre fichier CSV. Cliquez sur « valider »

Importation des données

A ce stade vous êtes prêt à importer mais l’importation n’a pas encore eu lieu.
Vous devez avoir un écran similaire.

Dans cette page vous pouvez encore préciser plusieurs choses, faire correspondre des champs, ... en principe votre fichier était bien préparé donc pas de raison de modifier quoi que ce soit !
Il vous reste à choisir « Ajouter » ou « Remplacer la table »

Et hop, chez moi cela a « encodé » 250 articles d’une carte d’un restaurant chinois, avec les numéros et les traductions en 3 langues sans parler des termes techniques.

J’ai « nem » plus peur d’entrer des données tabulaires dans spip :-)

Discussion

44 discussions

  • 10

    Bonsoir et bonne année.

    Que manque-t-il pour la compatibilité de CSV_IMPORT avec spip 3.1 ?

    Merci d’avance

    • pareil, certainement que quelqu’un mette a jour la borne dans le paquet ;-)

    • Fennec72 pourquoi ne pas tester et revenir dire si il est compatible ?

    • Bonjour, impossible d’installer le plugin dans un SPIP 3.1.0-rc3

    • Je l’ai installé en 3.1 en modifiant la borne, pas trouvé de problème particulier.
      Sauf le bug des apostrophes qui n’est pas résolu.

      Il paraît que ce serait bien de brancher le plugin sur les fonctions csv du core, si quelqu’un sait faire...

    • philippe paille

      bonjour
      Pour moi sous SPIP 3.1.3
      Je peux faire uniquement des exports.
      Je n’ai pas les liens actifs pour faire des imports.

    • Bonjour à tous,

      J’ai testé le plugin sous SPIP 3.2 et PHP 7,le plugin est quasi inutilisable, je pense pas pour autant que ce soit trop compliqué a régler.

      J’espère vite pouvoir le réutiliser, je suis désormais obliger de passer par un « vieux » spip 3.0, pour faire un import puis je mets a jour en 3.2, pour exporter la table concerné avec PhPMyAdmin, pour l’importer ensuite dans mon site final en 3.2.

      Je serais content d’aider, mais je ne pas un cador en php !

      Merci à l’équipe !

    • Bonjour,

      Le plugins est pas indiquer compatible 3.2 ici.

    • Bonjour,
      Effectivement, mais le fil de conversation auquel je donne suite a pour sujet la portabilité du plugin vers SPIP 3.1. Donc je souhaitais juste donner un feedback sur la compatibilité 3.2.

      Merci.

    • Bonjour, toujours pas de solution pour la portabilité en spip 3.2 ?
      Merci

    • C’est le seul plugin qui semble gérer l’import de masse.
      Est-il prévu une mise à jour pour le rendre compatible SPIP 3.2 ?

    Répondre à ce message

  • 5

    Bonjour,
    Intéressant ce plugin.
    J’aurais toutefois quelques questions :
    -  est-ce qu’on pourrait envisager une évolution vers une restriction de l’importation à une rubrique par exemple ? Parce que c’est un peu délicat, il me semble pour mon cas, de devoir manipuler la totalité des articles d’un site juste parce qu’une rubrique est à mettre à jour.
    -  qu’entendez-vous par « Ajouter » : est-ce que les données modifiées sur un id-article seront prises en compte et remplacées dans la table ou est-ce que ces changements seront ignorés ? Parce que j’imagine que dans le fichier importé, il y aura de nouvelles lignes et des lignes qui auront été modifiées. Est-ce que la procédure compare chaque champ de la table spip_articles et remplace les anciens contenus par de nouveaux ?
    J’ai un gros site avec beaucoup beaucoup d’articles, je voudrais pas que mon rédacteur le mette en vrac avec une mauvaise manip. Mais je n’ai peut-être pas tout compris.
    Merci pour vos conseils.

    • Question subsidiaire : à quoi servent les champs de saisie vides dans la page Administrez les tables ?
      Merci.

    • D’après le code source tu peux y indiquer le titre personnalisé de ton fichier d’export (est ajouté au nom de fichier exporté)

      dd

    • Merci pour ta réponse DD :-)

    • Même besoin !

      J’ai aussi un gros site a gérer ou seul certaines rubriques requiert des mise à jours. Restreindre l’importation à une rubrique serait vraiment top !

    • Bonjour,

      Ceci est un petit UP, en effet cette fonctionalité qui permettrai de choisir une rubrique pour l’import serait fort utile.

      Cordialement

    Répondre à ce message

  • 1

    Si vous avez un message comme celui-ci « Fatal error : Uncaught Error : [] operator not supported for strings in (…) », voici ce que j’ai fait. J’ai Stackoverflowfé et, effectivement…

    https://stackoverflow.com/questions/5879675/problem-with-fatal-error-operator-not-supported-for-strings-in

    « You get this error when attempting to use the short array push syntax on a string.
    For example, this »

    $foo = 'foo';
    $foo[] = 'bar'; // ERROR! 

    Puis, dans la ligne 89 il suffit de remplacer

    $vals = '';

    par

    $vals = [];

    Puis tout marche à la perfection sur SPIP 3.2.3 exception faite des quelques problèmes de affichage CSS dans le privé. En tout cas c’est ce que j’ai vu.

    Répondre à ce message

  • J’ai ajouté

    $GLOBALS['csvimport_tables_jointures'] = true;

    Comment est-on sensé s’en servir ensuite ?

    Répondre à ce message

  • Est-ce compliqué d’ajouter l’option « SQL UPDATE » dans le plugin ?

    Julien.

    Répondre à ce message

  • 4

    bonjour

    ce plug in est vraiment génial. Par contre j’ai moi aussi un probleme avec le caractère d’échappement ; qui insere systématiquement \ quand il trouve une apostrophe ou un guillement dans mes texte.

    par exemple je me retrouve avec

    d\’eau au lieu de d’eau

    comment faire ?

    • Bonjour,

      J’ai modifié le plugin pour éviter d’avoir des anti-slash devant les apostrophes, le plugin est pas dispo sur le svn de spip, sinon cela m’aurais donné l’occasion de demander mes identifiants sur spip-zone ( après avoir demandé à l’auteur s’il trouvait pertinent ces modifications ).

      Vers la fin du fichier ligne inc\csvimport.php ligne 567

      		foreach($data as $key=>$ligne)
      		{
      			$count_lignes ++;
      			
      			$check = array_flip($tablefield);
      
      			$champs = "";
      			$valeurs = "";
      
      			foreach($check as $key=>$value){
      				$kc = csvimport_nettoie_key($key);
      				if ( (isset($assoc[$kc])) && (isset($ligne[$assoc[$kc]])) )
      				{
      					$champs .= $assoc[$kc].',';
      					$valeurs .= '"'.$ligne[$assoc[$kc]].'",';
      					unset($check[$key]);
      				}
      	 		} // (FIN foreach)
      			
      			if ( (isset($stamp)) && isset($check[$stamp]) ){
      				$what[$stamp] = date('Y-m-d H:i:s');
      			}
      			// Suppression virgule finale
      			$champs = substr($champs, 0, -1);
      			$valeurs = substr($valeurs, 0, -1);
      
      			if (!empty($valeurs) && !empty($champs)) 
      			{
      				$id_primary= sql_insert($table, "($champs)", "($valeurs)" );
      		
      				// SI id = 0 (Erreur d'insertion) ...
      				if ($id_primary==0) {
      					$apercu = couper(print_r($valeurs,true), 150, ' ...'); // Petit aperçu de la valeur (150 caractères)
      					$erreur[$count_lignes][] = "Ajout impossible ! :: $apercu ";	
      				}
      					
      			} else {
      				$erreur[$count_lignes][] = "Rien à ajouter ! ";
      			}
      			
      		}// (FIN foreach)

      Si vous testez avec ce nouveau code, merci de faire un retour ici.

      Le Linuxien masqué

    • Jean-Momo

      Bonjour,

      J’ai toujours les apostrophes précédés d’un slash sur la version la plus récente

      Est-ce que quelqu’un est en mesure de corriger cela dans le plugin ?

      Merci d’avance

    • Il me semble qu’on peut contourner le bug en utilisant un filtre « stripslashes » à l’affichage des champs issus de l’import.

    • linuxien masqué j’ai testé ton code ça a l’air de fonctionner

      5 années après ton post il y a encore le bug dans le plugin lol

    Répondre à ce message

  • 1

    Jointures,

    si dans spip 2.1.x.... on active les jointure dans options.php, comment fait on ensuite pour s’en servir ?

    je voudrais ajouter aux articles que je veux ajouter par ce biais des mots clés ainsi qu’un auteur

    le fait d’ajouter cette instruction dans mes options ne change rien à l’interface

    merci

    • Jean-Momo

      Même chose, j’aimerais bien trouver un exemple avec la liaison des mots clés

    Répondre à ce message

  • Hello,
    Bien pratique ce plugin

    Sur la page /ecrire/ ?exec=csvimport_tous
    il y a un lien en bas « Créer un nouveau formulaire »
    vers
    /ecrire/ ?exec=forms_edit&new=oui&type_form=table&retour=.%2F%3Fexec%3Dcsvimport_tous

    Je ne comprends pas bien ce que cela permet de faire.

    SPIP 3.0.1

    Merci
    dd

    Répondre à ce message

  • 1

    Bonjour,
    merci pour ce plugin bien utile.
    Il y a un souci lorsqu’on importe des données pour un plugin issu de la fabrique : lorsque la table à remplir évolue dans sa structure (ajout de champ), CSV_import ne prend pas en compte ces modifications. Même si on désactive, et même si on réinstalle CSV_import.
    Il me semble qu’il y a des meta qui ne sont pas vidées en sortant, non ?
    MErci,
    Sylvain

    • Bon, désolé, en fait ma table n’avait pas été modifiée, csv_import ne pouvait donc pas voir de diffférence...
      Il faut réinstaller le plugin de la fabrique pour que ses différences soient prises en compte.

      Mais quand même, les metas ne sont pas supprimées à la suppression du plugin csv_import.

    Répondre à ce message

  • Bonjour,

    J’obtiens une erreur « Ligne 2 : : Fichier vide » lorsque j’essaie d’importer un fichier CSV dans la base de données. À quoi est-ce dû ?

    Merci d’avance pour votre aide !

    Répondre à ce message

  • 1

    Ce plugin est hyper-utile : merci !

    Mais à l’usage (avec ses surprises), j’ai rencontré certaines difficultés ; déjà, comme dit dans d’autres commentaires, ré-exporter le (même) fichier CSV avec LibreOffice pluot qu’avec Excel élimine certains soucis....

    Et puis, en utilisation courante, j’ai rencontré plusieurs fois le même souci : impossible de recharger la valeur du champ « id_xxx » si le nom de colonne n’est pas identique au nom de clé SPIP ; changer le nom de la première colonne pour y mettre le bon libellé « id_xxx » et tout marche !?

    J’aurais une suggestion, concernant le statut (issu de la fabrique) :
    -  soit il faut penser à créer une colonne y contenant une valeur correcte ’prepa’ ou ’publie’,
    -  soit il serait préférable d’y balancer une definition par defaut surchargeant celle initiale à ’0’

    D’autre part, l’insertion des dates peut poser souci, selon le format d’exportation inscrit dans le CSV : une idée..... utiliser la facilité de ’normaliser’ que Rasta m’a fait découvrir dans verifier ?

    @+
    YannX

    • J’ai testé l’import d’articles : la solution de mettre le statut à 0 par défaut n’est pas très pratique : en effet, mes nouveaux articles n’apparaissent pas en partie privée, les rédacteurs ne peuvent donc pas les manipuler pour modifier leur statut. Pourquoi ne peut-on pas importer le statut en mode ’prepa’ par exemple ? j’ai peut-être loupé une discussion à ce sujet ? Cette option n’est pas proposée dans la liste des champs (Spip 3 et dernière version du plugin). Merci.

    Répondre à ce message

  • Je m’apprête à installer ce plugin mais j’ai une petite question : que se passe-t-il si le fichier importé comporte à la fois des éléments déjà présents dans la table et des lignes nouvelles ?
    Est-ce qu’il va laisser intacts les articles présents sur le site et seulement y ajouter les nouveaux ?
    Merci.

    Répondre à ce message

  • 4

    Pour spip 3 en changeant sur la ligne 637 du fichier « csvimport_import.php » dans le répertoire exec
    icone_inline() par icone_verticale(), ca marche chez moi

    • Je viens de faire un commit sur la zone avec ces modifications pour rendre le plugin compatible SPIP3.

      La mise en page de la page d’administration des tables n’est pas top en spip 3 (désolé ça dépasse mes compétences) mais ça reste fonctionnel.

      J’ai vite fait testé les modifs sous SPIP 2.1 et SPIP 3 et je crois n’avoir rien cassé. Dites-moi si vous voyez quelque chose.

    • obiwanriko

      Bonjour
      je suis intéressé par ce plugin. où peut-on trouvé ce plugin pour SPIP 3 ? En zip ?
      PS : je peux pas utiliser la zone et le SVN : bloqué par ma DSI qui interdit également le rapatriement de fichier via clef USB :-(

    • @obiwanriko Euh... On peut le trouver en cliquant sur le lien en haut de la page ? :-P

    • obiwanriko

      oupsss merci. J’avais pas lu les compatibilités juqu’au bout.... J’avais vu que spip 2... lol
      Sinon avez-vous déjà entendu que l’on peut utiliser ce plugin pour importer des données dans des champs d’articles créés avec le plugin « Champs extra » ?

    Répondre à ce message

  • Merci bien, pour ne pas avoir de backslashes devant les apostrophes ligne 573 inc/csvimport.php, retirer le addslashes fonctionne pour mon cas.
    $what[$key] = addslashes($ligne[$assoc[$kc]]);
    $what[$key] = $ligne[$assoc[$kc]];

    Répondre à ce message

  • 1

    Bonjour,

    je cherche à exporter des tables relativement lourdes et je tombe inlassablement sur

    « Internal Server Error
    The server encountered an internal error or misconfiguration and was unable to complete your request.
    Please contact the server administrator, postmaster@www and inform them of the time the error occurred, and anything you might have done that may have caused the error.
    More information about this error may be available in the server error log. »

    Une idée ?

    • Cela m’est arrivé aussi : deux solutions possibles :
      -  modifier le max_execution_time dans apache.*../bin/php.ini
      -  au contraire de la sauvegarde, je ne suis pas sûr que faire un relance l’importation jusqu’a la fin....

      YannX

    Répondre à ce message

  • Bonjour,
    Je suis très intéressé par ce plugin, je tente de créer un site de généalogie tout en spip, et regarde comment je peux importer un fichier gedcom en csv, après plusieurs tentafives bien entendu j’ai échoué,
    peut-être :
    -  que le plugin n’est pas adapté
    -  que mon site ne corresponds pas
    Il y a de toutes façons quelque chose, y a-il une possibilité d’adapter,
    Merci

    Répondre à ce message

  • 1

    une version pour spip 3 est-elle prévue ?

    • je me joins à la demande précédente :
      va-t-il y avoir une version de CSV Import compatible avec SPIP 3 ?

    Répondre à ce message

  • 1

    Bonjour,

    impossible pour moi d’ajouter mes données à la table j’obtiens sans cesse ce message d’erreur en cliquant sur « ajouter les données » :

    Fatal error : Call to undefined function bouton_block_invisible() in C :\wamp\www\FFRS\plugins\csv_import_2_0\exec\csvimport_import.php on line 204

    Quoi faire ?

    • Réponse :

      Passage de la 0.2.1 à la 0.2.2 sauf qu’à présent nouvelle erreur : Ligne 1 : : Ajout impossible ! : : Array ( [id_article] => .....

    Répondre à ce message

  • 6
    Francky

    Bonjour,

    J’ai un problème avec les caractères accentués.
    J’exporte ma base en csv classique avec des virgules. Je la récupère avec Open Office version 3.2.0.

    Si la plupart des caractères accentués sont bien interprété lorsque j’indique le format UTF-8 à Open office
    quelques caractères comme les (à, oe, û, ù, oe) et d’autres que j’oublie très certainement ne sont pas reconnus.
    J’ai des carrés à la place.

    Je pensais que le utf-8 réglait tous ces problèmes mais....

    Voilà, hormis ce soucis, ce plugin me sauve la vie !!!!
    Un grand merci

    (spip version 2.0.9 --- Version plugin : 0.2 [36128])

    • Je reviens sur mon message du 29 mars pour certains caractères accentués.
      A priori le soucis venait de easy php et non pas du plug ni de spip.
      Désolé si je vous ai fais perdre du temps et encore merci pour cette joli contrib !

      Francky

    • Bonjour,

      Je rencontre également un souci du même type, mais uniquement avec les apostrophes qui sont systématiquement précédé d’un \ après importation.

      Mon EasyPHP est paramétré correctement à priori.

      Seul le remplacement de ces apostrophes par leur unicode permet un affichage correct, mais celui-ci reste malheureusement en toutes lettres dans les champs de mes articles.

      Avec mes remerciements pour votre attention.
      Fabienne

    • Bonjour
      Le sujet date un peu mais j’ai moi aussi le soucis avec les apostrophes.
      Quelqu’un à trouvé une solution à ce problème ?

    • En fait j’ai contourné le problème en passant par du csv généré par open office (bizarrement j’avais moins de soucis qu’avec excel) et en passant directement par PhpMyAdmin.

    • J’utilise déja openoffice
      Par contre, ton idée est bonne, je vais faire ca directement dans phpmyadmin...

      Merci pour ta reponse

    • Bonjour,

      Pour les apostrophes, voir la réponse que je viens de faire à jacangers

      Le Linuxien masqué

    Répondre à ce message

  • 1

    j’ai un problème à l’import d’articles.
    Je respecte toutes les consignes mais immanquablement mes apostrophes ’ sont remplacées par un signe \

    corriger cela à la main quand on importe des centaines d’articles est fastidieux, une consigne ?

    merci

    Répondre à ce message

  • merci pour votre plugin

    Note 2 : dans la version pour SPIP 2, si l’on souhaite gérer aussi les tables des jointures (spip_auteurs_articles par ex), ajouter la ligne suivante dans le fichier mes_options.php du site : $GLOBALS[’csvimport_tables_jointures’] = true ;

    c’est toujours valable dans spip 2.0.10

    j’ai pas trouvé le fichiers mes_options.php

    je suis nul ...

    Répondre à ce message

  • Bug à signalé sur les dates

    j’ai d’abord exportés toutes les données de la table article en utilisant le plugin, puis j’ai fais des modif, et j’ai remplacé les données.

    alors que les dates n’ont pas été modifiées sur le CSV elles sont devenues complétement farfelues dans la base

    j’ai des création d’articles dans les années 2030 etc

    Répondre à ce message

  • Une petite question : quelle différence y a t-il exactement entre l’action d’Ajouter ou de Remplacer la table ? Parce que j’ai l’impression que l’ajout ne s’occupe pas de vérifier si les entrées existent déjà et je me retrouve avec des doublons. J’ai adapté ce plugin à une utilisation un peu particulière : la gestion d’un stock de 15000 pièces (avec l’ajout d’une table supplémentaire). En faisant mes tests, je me suis retrouvée avec une table de 52000 entrées !
    Merci d’avance pour votre éclairage. Et bravo pour ce plugin !!

    Répondre à ce message

  • 1

    J’ai un problème avec le plugin sous spip 2.1.10

    Lorsque je tente d’importer le csv dans spip-articles en faisant « ajouter à la table », le message suivant s’affiche : 3::0:Correspondances CSV-Table incomplètes et les articles ne sont pas créés.

    J’ai essayé avec un fichier csv de 2 lignes et j’ai le même message ...

    Merci de votre aide !

    • Problème résolu, je n’avais pas bien compris le principe. Les informations de mon csv ne correspondaient pas au format attendu par la BD (pour la date).

      Super outil !

    Répondre à ce message

  • Je rencontre une difficulté à l’installation du plugin sur un spip 2.1.0
    Fatal error : Call to undefined function test_plugin_actif() in .../plugins/csv_import_2_0/csvimport_boutons.php on line 25

    à l’examen du code, Il semble que le test

     AND  (!test_plugin_actif('bando'))

    soit fautif car il génére l’erreur en l’absence du bandeau. Je l’ai donc supprimé et réussi à installé.

    Répondre à ce message

  • Remarque utile : si certains champs contiennent les caractères

     ; ou "

    , l’export CVT via excel ne se fait pas correctement. Du coup le plugin intègre des éléments erronés. Une astuce consiste à utiliser le site de conversion de fichier http://www.zamzar.com qui lui travaille correctement.

    Voir aussi référence http://www.commentcamarche.net/faq/...

    Répondre à ce message

  • 2

    En 2.0.10, quand j’essaie d’importer des articles, j’ai le message d’erreur suivant :

    Fatal error : Call to undefined function bouton_block_invisible() in plugins/auto/csv_import_2_0/exec/csvimport_import.php on line 204

    Répondre à ce message

  • Bonjour,

    Je viens d’installer le plugin (site sous SPIP 2.1.2 sans rien de plus).
    Première tentative d’ajout de rubriques :
    Des rubriques sans titre sont créées et sont inaccessibles !

    Deuxième tentative :
    Les warnings ci dessous !

    Depuis la situation se répète, même en vidant le cache et désactivant / réactivant le plugin.

    Une idée pour me permettre de trouver l’erreur que j’ai faite ?
    Merci d’avance.

    Warning: array_keys() [function.array-keys]: The first argument should be an array in /homepages/16/d218686833/htdocs/plugins/csv_import_2_0/inc/csvimport.php on line 342
    
    Warning: Invalid argument supplied for foreach() in /homepages/16/d218686833/htdocs/plugins/csv_import_2_0/inc/csvimport.php on line 343
    
    Warning: array_flip() [function.array-flip]: The argument should be an array in /homepages/16/d218686833/htdocs/plugins/csv_import_2_0/inc/csvimport.php on line 346
    
    Warning: array_keys() [function.array-keys]: The first argument should be an array in /homepages/16/d218686833/htdocs/plugins/csv_import_2_0/inc/csvimport.php on line 370
    
    Warning: Invalid argument supplied for foreach() in /homepages/16/d218686833/htdocs/plugins/csv_import_2_0/inc/csvimport.php on line 370
    
    Warning: array_keys() [function.array-keys]: The first argument should be an array in /homepages/16/d218686833/htdocs/plugins/csv_import_2_0/inc/csvimport.php on line 380
    
    Warning: Invalid argument supplied for foreach() in /homepages/16/d218686833/htdocs/plugins/csv_import_2_0/inc/csvimport.php on line 380
    
    Warning: array_keys() [function.array-keys]: The first argument should be an array in /homepages/16/d218686833/htdocs/plugins/csv_import_2_0/inc/csvimport.php on line 390
    
    Warning: Invalid argument supplied for foreach() in /homepages/16/d218686833/htdocs/plugins/csv_import_2_0/inc/csvimport.php on line 393

    Répondre à ce message

  • 3

    Le plugin ne marche-t-il qu’avec une 1.9.2.d ou est-ce que ca peut fonctionner avec une 1.9.2.a ou 1.9.2.c ?

    quel serait le problème ? différence de champs et de tables ?

    • Olivier G

      j’ai oublié de mettre mes coordonnées

    • François Daniel Giezendanner

      Bonjour,

      Est-il prévu d’adapter ce plugin pour SPIP 2.1

      Cordialement

      FDG

    • Bonjour,

      Je constate avec joie aujourd’hui que ce plugin est adapté pour SPIP 2.1 depuis le 26 novembre 2010 à 16h00.

      Grand merci à Cedric MORIN et à Paulbe et bonne continuation !

      Cordialement

      FDG

    Répondre à ce message

  • 2
    François Daniel Giezendanner

    Bonjour,

    Ce plugin est impressionnant et ouvre des perspective très intéressantes, merci à Paulbe pour cette très belle et importante contribution.

    J’ai fait un rapide et très simple essai décrit ici :

    Dès lors il me paraît indispensable à SPIP.

    Commente est envisagé son adaptation à SPIP 2.1.x ?

    Cordialement

    FDG

    • Hello,
      Je ne suis que le rédacteur de la doc !

      Rendons à César ce qui appartient à César ;-)

      Amitié
      Paulbe

    • François Daniel Giezendanner

      Désolé,

      J’ai lu trop vite en diagonale.

      En effet, le fichier XML indique que l’auteur est Cedric MORIN, voilà César réhabilité à juste titre !

      Amitié
      FDG

      plugin CSVImport : Description via le fichier XML

      Import / Export de fichiers CSV pour les tables SPIP.

      Ce plugin permet à l’administrateur de définir les tables pour lesquelles import et/ou export sont autorisés : Ce peut être les tables SPIP ou n’importe quelle autre table de la base.

      Les tables autorisées pour l’import/export qui ne sont pas des tables de spip sont déclarées dynamiquement afin d’être sauvegardées automatiquement par le plugin Super_Dump.

      Auteur : Cedric MORIN notre-ville.net
      © 2006-2009 - Licence GPL
      URL : http://www.spip-contrib.net/Utilisation-du-plugin-CSV_IMPORT
      Version : 0.2 [40407] — stable
      Répertoire : csv_import_2_0

    Répondre à ce message

  • Bonjour,

    Est-ce que ce plugin pourrait être utilisé pour ajouter environ 150 utilisateurs sur une nouvelle installation de SPIP sans devoir les entrer à la main ?

    Si tel est le cas, je serais le plus heureux du monde !!! ;)

    Merci de vos réponses.

    Cordialement,
    Sploutch

    Répondre à ce message

  • Bonjour à tous...

    J’adore ce plugin ! Je l’utilise depuis bientôt un an mais, maintenant, j’ai un problème !

    En effet, dans la précédente version du plugin, on disposait du nom des champs csv, lorsqu’on importait des données. On pouvait, ainsi, faire correspondre, facilement, les champs de la table avec les champs csv, en se basant sur le nom des champs.

    Dans la nouvelle version du plugin, les champs du fichier csv sont remplacés par des nombres... Ce qui fait qu’on importe, à l’aveugle, (ou presque). En tout cas, c’est moins pratique, pour moi, qui ai 33 champs dans ma table articles et dans mon fichier csv.

    J’avais déjà observé ce problème avec cette version spip2 mais, jusqu’ici, j’utilisais la version 2.0.0.9 de spip, qui me donnait l’opportunité de travailler avec la version 1.9 du plugin, qui ne présente pas cette configuration. Depuis la 2.0.10, la version 1.9 du plugin renvoie une erreur. Sur la nouvelle version 2.1 de spip, sur laquelle j’essais de migrer, on retrouve aussi cette erreur donc, seule la version 2 du plugin est utilisable avec ces versions de spip.

    Comment puis-je faire pour remplacer les nombres (qui correspondent aux champs csv), par la valeur de la première ligne de chaque colonne du csv ?

    Je vous remercie infiniment pour votre aide... Je suis un peu bloqué, là... Je dois mettre à jour, avant mardi, un peu plus de 1000 articles...

    Répondre à ce message

  • Deuxième question : Pourquoi n’y a-t-il pas de table spip_auteur_article ? Alors qu’il y a spip_auteur_rubrique ?

    Répondre à ce message

  • Je me casse la tête...

    J’ai fait un essai (je suis sous spip 2.0.0.10) avec un seul article à importer.

    Le fichier a l’air bon mais il me propose d’ajouter 2 lignes avec en premier la ligne des titres et si je vais jusqu’au bout il ne me rajoute en article que la ligne de titre des champs.

    Je ne comprends pas. Repris à plusieurs reprises sans succès.

    Aidez-moi, s’il vous plaît !!! Je voulais importer 1200 articles !

    Répondre à ce message

  • Soucis !!!

    L’install du plug et de spip bonus sur un spip 2.0.10 propre Sans aucun soucis avec toutes les fonctionnalités !

    LA meme install sur un spip 2.0.10 provenant d’une migration d’un Spip 1.9.2 me donne un essage suivant , quand je vais sur la page « Administrer les tables »

    Warning: Invalid argument supplied for foreach() in C:\Program Files\EasyPHP 3.0\www\bcamille\plugins\auto\csv_import_2_0\exec\csvimport_admin.php  on line 116

    Répondre à ce message

  • A quoi servent les champs de saisie au dessus de la presentation de chaque table ?

    Peut etre comme evolution possible il serait interessant par exemple de pouvoir par ce procédé recupérer les article de la rubique « X » uniquement

    Cordialement

    Eric

    Répondre à ce message

  • 1

    Bonsoir un ptit soucis avec ce plug installé comme il se doit.

    Spip 2.0.10

    Pas de soucis pour l’export de la table article, qui va me servir de modele de structure pour l’import de données, venant d’une base Spip 1.9.2i

    Je fais mon « Mix » entre les deux bases sur la structure Spip 2.0.10 et j’enregistre en CVS

    Quand je retourne sur mon Spip 2.0.10 (en suivant les explications) je ne vois pas ma page de la même façon que sur l’image 12, à savoir celle qui est juste sous le titre « Importation dans SPIP », j’ai juste la partie haute de cette image Avec le raccourcis « Administrer les tables » à gauche et sur la droite « Tables déclarées » (Image jointe).
     ? Mais où j’ai foiré ?

    Si vous avez un piste, une boussole, quelques petits cailloux blancs pour me guider je suis preneur !!!

    Cordialement à vous

    Eric

    • Réponse à moi meme

      Bien que pas indiqué dans la notice, il suffit de decocher « Exporter » et « Tout remplacer » sur la page « Administrer les tables »

      La nuit porte conseil dit on ???

      Cordialement

    Répondre à ce message

  • Bonjour,

    Est ce que la démarche est la même si je veux importer dans un article déjà créé un fichier csv pour renseigner un tableau dans le champ texte ?
    Cordialement,

    Répondre à ce message

  • bonjour, pour ma part, sous SPIP 2.0, je ne parviens pas à utiliser le plugin, car bien il ne semble reconnaître que la virgule comme séparateur et non le point virgule...

    Répondre à ce message

  • François Daniel Giezendanner

    Bonjour,

    Nous souhaiterions utililiser ce plugin pour importer un thésaurus de mots-clés sous SPIP 2, cela signifie deux conditions à savoir, le plugin CSV_IMPORT :

    • permet-il de le faire en SPIP 1.9.2 ?
    • sera-t-il prochainement adapté pour SPIP 2 ?

    Meilleurs messages

    FDG

    Répondre à ce message

  • 1

    Up ;=)

    une version Spip 2 prévue ?

    Répondre à ce message

  • Bonjour,

    Est il envisagé de réaliser une version pour SPIP 2 ?
    Où celle-ci est elle supportée ?

    Merci, Max.

    Répondre à ce message

  • Bonjour,
    je trouve ce plugin tres pratique, mais je rencontre un soucis.
    Je souhaite faire évoluer un site statique vers un site SPIP. Ce site comporte enormement de documents sous la forme documents joints.
    Avec ce plugins, j’arrive à remplir facilement un fichier csv pour importer dans la table spip_documents. J’arrive à faire de meme pour la table spip_articles.
    Mon probleme est le suivant : je n’arrive pas à lier les documents aux articles. A priori, il faut que je renseigne la table spip_documents_articles, mais celle-ci n’apparait pas dans le menu administrer les tables.
    Pouvez-vous m’aider ?
    Merci

    Répondre à ce message

  • 2
    PetarouxRay

    bonjour,

    outil excellent pour insérer rapidement des rubriques et des articles basiques dans son site :)
    J’ai rencontré plusieurs soucis cependant quand il s’agit d’ajouter des document.

    1) Dans la partie « Administrez les tables », spip n’affiche pas toutes les tables. C’est le cas de la table ’spip_document_article’ par exemple, qui permet de faire le lien entre un article et ses document.

    2) Quand on choisit d’importer des document donc : on choisit la table spip_documentation, on enregistre et on remplit notre fichier csv avec nos valeur.
    Tous marche tres bien, la table est bien mise a jour.
    Le soucis que j’ai recontré, c’est que ces documents sont liés a l’article en temps qu’images et non en temps que fichiers joint. Donc non affiché sur le site.
    Je cherche actuellement le champ et la table a modifié dans la base de données spip, pour ce problème.

    voila :) excellent outil quand même, bravo.

    Je confirme qu’excel n’est pas le mieux. Il ne propose pas utf-8 a l’importation de fichier csv

    • lbpr23b

      Bravo,
      Très utile.
      Est il possible de faire une automatisation ??

      En effet, mon objectif : récupérer un cvs tous les jours sur un ftp et l’insérer dans ma Base Spip après tri.

    • PetarouxRay

      Encore moi, pour ce qui est du point 2) du premier message :
      ça marche correctement si on spécifie bien dans les champ de la table spip_documents ; la taille (en octets), le mode(document), et dans le champ « fichier » le chemin du fichier sur votre site (en théorie ’IMG/nom de l’extension du fichier/fichier’ ... ex IMG/ZIP/toto.zip)

      voila
      ensuite bien sur il faut remplir la table spip_document_article pour faire le lien.

      donc au final, pour les fichiers joints, il est aussi rapide de le faire a la main sous spip :)

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom