Script cgi pour récupérer les données d'un formulaire pdf  (Lu 3611 fois) Partager ce sujet Imprimer

1 B


josephtux  25 janvier 2017 : 12:11

Bonjour

j'arrive bien tard pour l'auteur de cette question, mais d'autres pourront peut-être y trouver leur bonheur.

Il est facile de créer un formulaire pdf avec LaTeX et l'extension hyperref.

Mais j'ai galléré des semaines sur internet sans trouver de solution simple à l'exploitation des données (hors acrobat reader, devenu inaccessible sous Linux depuis pas mal de temps!)

La réponse est simple: pdftk le fait très bien,  (il peut aussi utiliser les fichiers de données fdf)

Exemple:
pdftk formulairecomplété.pdf dump_data_fields_utf8 | egrep 'FieldName|FieldValue'
Explications:man pdftk ou, en français: https://doc.ubuntu-fr.org/pdftk

Pour remplir un formulaire pdf sous Linux (donc privé d'acroread depuis longtemps), il y a (au moins) evince (et sans doute d'autres lecteurs pdf, mais ps tous -pas xpdf-)

IP archivée


Merlin  28 avril 2014 : 11:35

Si j'ai bien compris le #FDF n'a rien à voir avec le format des données. C'est dans le bouton "Envoi" que ça se décide.
Mais pour la partie envoi je ne sais pas quoi dire… J'ai toujours fait ça dans Acrobat.

N'oublie pas que D.P. Story est et a toujours été un universitaire, c'est certainement pour ça qu'il parle d'administrateur système.

 :Smiley01:

IP archivée


Reda  28 avril 2014 : 07:04

Bonjour Merlin,

Vraiment un grand merci à toi, ça va beaucoup m'aider j'aurais jamais mis la main tout seul sur ce genre de ressources et merci également pour ton script. Je vais essayer de l'installer et de l'adapter à mon quiz et enfin de comprendre tout ça de mon côté et je reviendrais probablement te poser quelques questions si jamais je bloque quelque part.

J'ai suivi ton conseil et j'ai écris à D.P. Story voici une partie de son message "As you may not know, you can submit your PDF data several ways, as FDF, has standard html, or as XML.  Adobe has pretty much given on on FDF, the toolkit is still available, but they have moved on".

Apparemment d'après ce qu'il dit c'est trop compliqué d'utiliser FDF toolkit ou bien il faut passer par un administrateur system de son établissement et que c'est maintenant dépassé car si les données du formulaire sont envoyées en format html n'importe quel script générique fait l'affaire, la question c'est comment on fait un envoi de ces données sous forme html est-ce qu'il suffit de ne pas terminer l'URL par #FDF ou il faut ouvrir le formulaire pdf avec un navigateur pour saisir les champs et faire l'envoi ? :Euuuh:  

IP archivée


Merlin  27 avril 2014 : 11:33

Le lien vers le tuto : http://tv.adobe.com/watch/acrobat-community-tv/working-with-form-data/
(Tu peux zapper les 10 premières minutes, ce n'est pas Kelly qui t'intéresse, c'est Dave)

Ci-joint le fichier PHP qui va avec et que j'ai amélioré parce-que :

- l'exemple original ne traite qu'un seul formulaire, chaque envoi écrase le précédent. J'ai donc modifié le script pour qu'il enregistre les données avec la date/heure dans le nom de fichier pour éviter les écrasements.

- les 4 dernières lignes sont facultatives, c'est parce-que je voulais être prévenu par email de l'arrivée de chaque formulaire.


Sinon, la source des liens est sur cette page, et il y en a plusieurs qui sont très intéressants : http://answers.acrobatusers.com/Submit-and-gDrive-q152400.aspx?tc=8832509113003201479400
Surtout si tu veux/peux utiliser GoogleDrive pour récupérer les données.


Je n'ai pas bien compris le pourquoi du #FDF a la fin de l'URL, sinon qu'il est indispensable quel que soit le format des données (FDF, XFDF, XML).

 :Smiley15:

IP archivée


Reda  26 avril 2014 : 20:48

Je connais D.P. Story et son blog mais il n'y aborde que l'aspect création du formulaire pdf et très brièvement et sans garanti celui de la récupération et du traitement des données dans sa doc, c'est à dire que chacun doit bricoler sa propre solution adapté à son environnement et à ses besoins.


Je suis preneur de ton tuto pour recueillir les données ce serait un pas énorme pour moi si ça concerne un formulaire pdf, si tu peux me donner l'adresse ça serait sympa de ta part. je pense qu'une fois la récupération faite, le traitement ne doit pas être si compliqué que ça.


J'ai plus ou moins compris qu'Acrobat avait son propre format de récupération de données qui est FDF mais est-ce que c'est la seule différence dans la récupération de données par rapport à un script PHP pour un formulaire en html il faut juste ajouter #FDF à la fin de l'URL ou il y a d'autres différences importantes et aussi j'ai lu quelque part qu'il y aurait des exemples de script dans FDF toolkit pour des formulaires pdf mais j'ai pas réussi à mettre la main dessus.


Merci de ton intérêt.

IP archivée


Merlin  26 avril 2014 : 19:15

Le secret c'est qu'il faut terminer l'URL par #FDF.

Je peux te passer un lien vers un tuto qui explique comment créer un script PHP pour recueillir les données, il est très bien je l'ai utilisé avec succès.
Par-contre pour ce qui est du traitement, etc. je ne sais pas faire.

Connais-tu D.P. Story, le grand-gourou d'AcroTeX, et son blog ?
Si lui n'a pas la réponse, personne ne l'a. ==> http://blog.acrotex.net/

 :Smiley01:

IP archivée


Reda  26 avril 2014 : 14:05

Bonjour Merlin,


Non je travaille juste avec Reader 11, je sais que via Acrobat pro j'ai accès au traitement des données
mais en quantité limitée et j'aimerai pouvoir disposer d'une solution gratuite et indépendante.


Je ré-écris ici la syntaxe du bouton de soumission qui n'est pas passée dans mon message précécdent \eqSubmit{http://.../cgi-bin/myQuiz.cgi}

IP archivée


Merlin  26 avril 2014 : 13:12

Bonjour et bienvenue,

As tu le logiciel Acrobat (version 9 ou +) ?

IP archivée


Reda  26 avril 2014 : 06:33

Bonjour à tous,


Je rédige des quiz en mathématiques à l'aide d'AcroTeX qui permet de créer des formulaires pdf interactifs avec du LaTeX pour l'environnement mathématique et du code Javascript pour des fonctionnalités telles la reconnaissance des réponses saisies, la correction etc.
Il existe une option pour soumettre les réponses lorsque le quiz (formulaire pdf) a été rempli pour cela on utilise un bonton de soumission de type [size=78%]\eqSubmit[/size][/size][size=78%]{http://[/size][/size][size=78%]www[/size][/size][size=78%]...[/size][/size][size=78%]/...[/size][/size][size=78%]/[/size][/size][size=78%]cgi[/size][/size][size=78%]-bin/[/size][/size][size=78%]myQuiz[/size][/size][size=78%].[/size][/size][size=78%]cgi[/size][/size][size=78%]}{...}{...}#FDF[/size]
[/size]
Malheureusement, je ne dispose pas du script cgi qui me permettrait de récupérer les données saisies du pdf et je ne veux pas passer par la solution payante du site acrobat. Je n'ai pas non plus les connaissances informatiques pour rédiger un tel script qui me permettrait de transférer les données du formulaire pdf sur une base de données par exemple ou un fichier excel. J'ai pas mal cherché sur le net des solutions mais en vai à part le FDF tool kit d'acrobat mais je n'ai pas trop compris ce que c'est.


Est-ce vous auriez des solutions pour moi l'idéal serait le script ou des liens pertinents pour rédiger et installer un tel script.


Merci d'avance pour vos réponse

IP archivée