CGI et upload de fichier [Résolu] - C - Programmation
Marsh Posté le 28-06-2004 à 16:05:44
Vous aurez le fichier dans les données postées. Utilisez fread plutôt que fscanf et getenv("CONTENT_LENGTH" ) pour connaître la taille de ces données. Utilisez aussi des fichiers textes pour faire vos tests et passez ensuite à des fichiers binaires.
Marsh Posté le 28-06-2004 à 17:06:22
Que ce soit fscanf ou fread sur stdin, j'ai le meme résultat, c'est à dire rien du tout.
Et si je fais un getenv("CONTENT_LENGTH" ) : Server error
Idem si je met CONTENT_TYPE. Par contre, QUERY_STRING marche
Je précise que je suis en method GET mais je pense pas que celà change quelque chose au problème
Merci pour votre aide ...
Marsh Posté le 28-06-2004 à 18:35:32
Worldofdada a écrit : |
groumf. http://www.faqs.org/rfcs/rfc1867.html
Marsh Posté le 29-06-2004 à 09:00:18
Déjà imprimé et déjà lu ....
Ca explique simplement comment est codé le fichier dans l'en-tete MIME.
Mais je n'arrive pas a récupérer cet en-tete :-S
Marsh Posté le 29-06-2004 à 09:07:36
Worldofdada a écrit : Déjà imprimé et déjà lu .... |
He bien à votre place, je ferais un test avec method="POST", pour voir...
Marsh Posté le 29-06-2004 à 09:11:49
DocMaboul a écrit : He bien à votre place, je ferais un test avec method="POST", pour voir... |
+1
c'est uniquement faisable en POST à mon avis aussi
Marsh Posté le 29-06-2004 à 09:14:07
JagStang a écrit : +1 |
On peut envoyer le contenu d'un fichier, ou quoi que ce soit d'autre d'ailleurs, avec un get mais pas à partir d'un browser. Enfin, pas à ma connaissance.
Marsh Posté le 29-06-2004 à 09:50:47
Effectivement, en POST, j'arrive a récupérer le MIME .....
Me reste plus qu'a analyser cette affaire .... c'est pas gagné mais c'est toujours un peu mieux .....
Par contre, apres 3-4 tests, j'ai l'impression que je ne récupere que le fichier si c'est un .txt or je dois pouvoir récupérer des images, des fichiers Word .... je vais essayer de fouiller ca.
Merci
P.S : je suis prenneur si vous connaissez un script permettant de décoder la piece jointe
Marsh Posté le 29-06-2004 à 16:24:31
C'est bon, j'ai réussi a tout récupérer .....
Merci beaucoup pour votre aide
Marsh Posté le 24-06-2004 à 16:13:09
Salut !
Je viens poster ici car apres avoir été dans la rubrique HTML/JavaScript .... on m'a dit qu'il vallait peut etre mieux venir ici.
Donc, voilà le problème (je recopie un résumé du post de l'autre rubrique) :
Je suis un peu embetté car, étant en stage, je dois réaliser un module Intranet en CGI (codé en C). (e qui fait que je tappe toutes mes pages HTML avec du fprintf(stdout, "<html>" ) ....
Bref, j'ai un petit souci sur lequel je n'arrive pas a trouver ma réponse.
Les utilisateurs doivent pouvoir télécharger des pieces jointes.
J'ai déjà fait ca en ASP ainsi qu'en PHP sans gros pbs (a part un peu pour l'ASP mais bon).
Le truc, c'est que je ne sais pas comment faire pour télécharger la piece jointe sur le serveur ....
En fait, je n'ai meme pas besoin de l'enregistrer sur le serveur mais simplement de la lire (c'est pour une base de donnée qui supporte les objets spéciaux).
Apparemment, c'est le HTML qui télécharge tout seul le fichier et qui le met dans son en-tete. (D'apres ce que j'ai pu comprendre)
Théoriquement, en faisant un fscanf sur mon stdin, je devrais avoir les en-tetes (toujours d'apres ce que j'ai lu et le test que DocMaboul a fait pour moi .... merci beaucoup d'ailleurs).
Or, je n'ai strictement rien ...
Quelqu'un pourrait il m'aider ?
J'ai matté le fichier log du serveur Apache et pas d'erreurs
Message édité par Worldofdada le 29-06-2004 à 16:24:52