Passage MySql à fichier SYLK (compatible excel) et inverse (PHP) - SQL/NoSQL - Programmation
Marsh Posté le 17-12-2003 à 12:05:30
personne aurait une doc corrrect en francais?
les seules infos que je trouve sont en anglais et déjà qu c'ets assezlourd a comprendre , ca n'arrange pas les choses
Marsh Posté le 01-03-2004 à 15:49:29
bon etant donné que personne n'a d'aide a m'apporter concernnat ce type de fichier hmmm
qu'elqu'un pourrait me dire qu'elle serait la solution idéal pour importer un fichier execl dans une base mysql et l'inverse et pouvoir traiter tester etc.. cahque celllule du fichier
j'ai bien vu les solutions :
Code :
|
que pensez vous de tout ca et qu'elle serai la solution la plus approprié
PS: Le fichier sylk me semblait lameilleur solution mais jene trouve aucune info sur la facon de formater un fichier SYLK
Marsh Posté le 01-03-2004 à 16:04:11
La meilleure solution, je pense, est d'exporter sous Excel ton fichier au format CSV
Ensuite tu pourra l'importer facilement sous MySQL
Marsh Posté le 01-03-2004 à 16:16:12
ratibus a écrit : La meilleure solution, je pense, est d'exporter sous Excel ton fichier au format CSV |
oauis mais ce format CSV est source a gros pb
il transforme tt seul les chmaps a ca guise :
exemple si on met 02563 il met 2563 et considère que c'ets un nombre alors que j'aurais voulu que ca soit du texte et donc qu'il conserve le 0.
Et dans la boite ou je suis et l'utilisation quej'ai de ces fichiers , bin ca peu poser de gros probleme
exmple si j'ai des GENCOD (13 chiffres) bin ca ecrit un truc avec des exponentiel a la base alors qeje voudrait que ca soit compris comme du texte.
Autre gros probleme c'est que c'ets pas moi qui se sert de l'application donc je voudrait que ceux qui s'en serve est lemoin de manipulation possible , car ils ne pourront pas penser a tout verifier.
Par conseqeunt c'est pour ca que je pensait au fichierSYLK qui permet de formater le fichier "excel" de doner des format aux champs
Marsh Posté le 01-03-2004 à 16:35:14
Tu peux p-e faire un ptit prog rapide en VB par ex. non?
Tu aurais un accès direct à excel, et à mysql via odbc...
Marsh Posté le 01-03-2004 à 16:41:21
skeye a écrit : Tu peux p-e faire un ptit prog rapide en VB par ex. non? |
bin disons que l'application tourne sur un intranet et donc en PHP
oups peut etre j'ai oublié de le préciser
Marsh Posté le 01-03-2004 à 16:42:57
skeye a écrit : Tu peux p-e faire un ptit prog rapide en VB par ex. non? |
par contre t'es entrain de m'ouvrir une voix la
hmm avec odbc il y aurai une piste a suivre?
Marsh Posté le 01-03-2004 à 16:45:02
saxgard a écrit : |
bah oui il y a tjrs une piste...
En vb tu as des composants pour accéder à des fichiers excel facilement, et pour les bases de données tu as ODBC...
Ca devrait pas être excessivement complexe de faire passer les données de l'un à l'autre à priori!
[edit]
Cherche des bouts de code qui écrivent dans un fichier excel à-partir d'une source odbc, ça doit se trouver...
Marsh Posté le 01-03-2004 à 16:57:39
skeye a écrit : |
oauis va falloir que je regarde ca de tres pres , d'essayer de passer par les pilotes odbc
je te remercie
je te tiens au courant dès que j'ai fais mes recherches
quelqu'un a d'autre piste? et plus particulièrement pour sylk?
Marsh Posté le 03-03-2004 à 09:01:44
bon bin dernière tentative de recuperation d'info sur les fichiers sylk
Marsh Posté le 08-03-2004 à 12:25:27
Ce post tombe bien, je viens de tomber sur ce format de fichier qui pourrait m'être très utile
Pour l'instant, j'ai trouvé que ca :
http://www.phpinfo.net/articles/article_sylk.html
mais je commence seulement mes recherches.
Marsh Posté le 17-03-2004 à 09:01:59
mrbebert a écrit : Ce post tombe bien, je viens de tomber sur ce format de fichier qui pourrait m'être très utile |
ouais j'avais trouvé le meme article , mais c'est difficle de trouver toutes les spécificités de ce format de fichier (en francais ou anglais mais tres clair) et la facon de le formater
Marsh Posté le 17-03-2004 à 09:33:41
Pour en revenir au CSV. Voici ce que je te propose :
tu exportes en CSV
tu importes en PHP le fichier et sur les champs problématiques tu fais des sprintf pour les formater à ta guise
Exemple :
Dans ton appli actuelle tu as 02563. En CSV tu as 2563. Tu fais sprintf("%05d",2563) et tu auras ce que tu veux
Marsh Posté le 17-03-2004 à 09:40:28
Ensuite il faut le bon format de tes champs dans MySQL.
Pour l'exemple que je t'ai donné il faut que le champ soit de type text, char() ou varchar() et par un format numérique sinon tu perdras les "0" qui sont au début
Je viens de tester l'export en CSV avec une valeur 0123 dans une cellule de type texte, le CSV a la même valeur et pas 123
Donc il faut que tu vois aussi le format de tes cellules sous Excel
Marsh Posté le 19-03-2004 à 09:09:49
oui oui mais le probleme c'est que j'aurai beau faire des sprintf etc..
lorsque l'utilisateur ouvrira le fichier CSV il devra specifier que telle cellule c'est du texte etc..
de plus quand tu dis de faire "sprintf("%05d",2563)"
tu insinu qu'il y a forcement un 0 non?
dans mon cas il peut y avoir un 0 devant ou non
puis j'ai aussi un problem de gencod qui contient 13 chiffres et qui s'affiche avec des 9E-900 (par exemple)
Comment peut-on eviter que lorsque l'utilisateur ouvrira le fichier CSV pour le transforemr au foramt XLS il n'y est pas a spécifier le tpe des cellules a cahque fois?
moi il me semble que c'ets impossible ou alors je ne comprend pas ce que ta expliqué
Marsh Posté le 19-03-2004 à 09:18:55
Attends j'ai un doute là
Tu veux importer des données dans MySQL depuis Excel ou bien exporter de MySQL vers Excel ?
Marsh Posté le 19-03-2004 à 09:25:57
ratibus a écrit : Attends j'ai un doute là |
en fait je veux je veux importer des donnes mysql a excel
et je n'ai rien trouver
alors j'utilise les CSV comme intermediaire et les utilisateur enregistre ensuite ce fichier au format excel
d'ou l'idée de passé au SYLK qui ma la'ir tres bien , juste un peu plus compliqué que le CSV (c'ets normal il gère les cellule et leur format )
Marsh Posté le 19-03-2004 à 09:28:59
ah ok
quiproquo dès le début
j'avais regarder aussi le format sylk
et puis finalement j'ai fais avec cette librairie :
http://php.mediate.sk/browse/package/767.html (c'est un portage en PHP de la librairie du même nom en Perl)
Marsh Posté le 19-03-2004 à 09:34:18
ratibus a écrit : ah ok |
avec cette librairie ta rencontré aucun probleme il me semble l'avoir deja essayé et ca ne marchait pas
il faut installer le package PEAR? aveoir une version particulière de PHP ou autre?
avec ca tu exportes facilement de mysql a excel?
Marsh Posté le 19-03-2004 à 09:38:47
aucun pb avec pour ce que j'ai eu à faire
en fait tu construit dynamiquement le fichier Excel.
Donc tes sources de données ça peut être ce que tu veux : données issues d'une base ...
Marsh Posté le 19-03-2004 à 09:44:38
ratibus a écrit : aucun pb avec pour ce que j'ai eu à faire |
bon va vraiment falloirq ue je regarde ca de plus pres alors parceque ca resoudrait plein de problèmes
je te remercie
PS : je suis toujours preneur sur des infos suir le SYLK
Marsh Posté le 01-12-2003 à 18:59:53
voila
qui aurait des renseignement sur la facon de formater son fichier SYLK
et les difefrentes propriétés que l'on peu utiliser pour ce fichier.
Ce type paraissant plus puissant que le type de fihcier CSV et pourtant on trouve moin d'info en francais et de doc sympas et lisible
si quelqu'un pouvais m'aider.
en fait j'ai besoin d'utiliser ce type de fichier pour definir que certain champ sont de type "texte"
exmeple si une valeur = 0012
je veux que ca m'ecrive bien 0012 et non pas 12 , comme le fait le format CSV
voila merci d'avance
Message édité par saxgard le 01-03-2004 à 16:42:04