Stockage de fichier via un formulaire

Stockage de fichier via un formulaire - PHP - Programmation

Marsh Posté le 25-03-2004 à 18:13:27    

Salut,
tout d'abord voici le code du formulaire qui me pose probleme :

Code :
  1. <body background="Images/fond_site.jpg" link="#000000" vlink="#000000" alink="#000000">
  2. <p>&nbsp;</p>
  3. <p><font size="1" face="Verdana, Arial, Helvetica, sans-serif"><strong>&raquo;
  4.   Entrer ici les informations pour la nouvelle :</strong></font></p>
  5. <p>&nbsp;</p>
  6. <? require "user_connect_2.php"; ?>
  7. <form method="post" name="form1" action="ajout_exam_confirm.php">
  8. <table align="center">
  9. <tr >
  10. <td nowrap align="right">Filière:</td>
  11. <td><input type="text" name="filiere" size="40"></td>
  12. </tr>
  13. <tr >
  14. <td nowrap align="right">Promotion:</td>
  15. <td><input type="text" name="date" size="40"></td>
  16. </tr>
  17. <tr >
  18. <td nowrap align="right">Matière:</td>
  19. <td><input type="text" name="matiere" size="40"></td>
  20. </tr>
  21. <tr >
  22. <td nowrap align="right">Fichier:</td>
  23. <td><input type="file" name="fichier" size="40"></td>
  24. </tr>
  25. <tr >
  26. <td nowrap align="right"></td>
  27. <td><br><input type="submit" name="Submit" value="Insérer l'enregistrement"></td>
  28. </tr>
  29. </table>
  30. <input type="hidden" name="insertion" value="form1">
  31. </form>


Et voici le code de la page "ajout_exam_confirm.php" auquel fait reference le premier code :

Code :
  1. <?
  2. require "user_connect_2.php";
  3. if (($matiere=="" )|($date=="" )|($filiere=="" )|($fichier=="" ))
  4. {
  5. if($matiere=="" ) print("<br><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\">
  6. <strong>&raquo; Veuillez saisir la matière</strong></font><BR>\n" );
  7. if($date=="" ) print("<br><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\">
  8. <strong>&raquo; Veuillez saisir la promotion</strong></font><BR>\n" );
  9. if($filiere=="" ) print("<br><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\">
  10. <strong>&raquo; Veuillez saisir la filière</strong></font><BR>\n" );
  11. if($fichier=="" ) print("<br><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\">
  12. <strong>&raquo; Veuillez saisir le chemin du fichier</strong></font><BR>\n" );
  13. echo "
  14. <body background=\"Images/fond_site.jpg\" link=\"#333333\" vlink=\"#333333\" alink=\"#333333\">
  15. <p>&nbsp;</p>
  16. <font size=\"1\" face=\"Arial, Helvetica, sans-serif\"><strong><div align=\"right\"><a href=\"javascript:window.history.back()\">RETOUR</a></div></strong></font>
  17. ";
  18. }
  19. else {
  20. echo "Récapitulatif des informations saisies<BR>\n
  21. <UL>
  22. <LI>Matière: $matiere</LI>
  23. <LI>Promotion: $date</LI>
  24. <LI>Filière: $filiere</LI>
  25. <LI>Fichier: $fichier</LI>
  26. </UL>
  27. <body background=\"Images/fond_site.jpg\" link=\"#333333\" vlink=\"#333333\" alink=\"#333333\">
  28. <hr width=\"100%\" size=\"1\" noshade>
  29. <p><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\"><strong>&raquo;
  30.   L'examen est enregistr&eacute; et apparaitra sur la page examen du site.</strong></font></p>
  31. <font size=\"1\" face=\"Arial, Helvetica, sans-serif\"><strong><div align=\"right\"><a href=\"home.php\">RETOUR ACCUEIL</a></div></strong></font>
  32. ";
  33. $action="INSERT INTO table_exam (filiere, date, matiere, fichier) VALUES (\"$filiere\", \"$date\", \"$matiere\",  \"$fichier\" )";
  34. mysql_query($action);
  35. mysql_close($db_link);
  36. }
  37. ?>


 
mon probleme concerne le champ fichier.
 
Je voudrai stocké le nom du fichier dans la variable $fichier et stocké le fichier lui même dans un dossié appellé exam sur mon serveur.
Or pour l'instant les 2 codes ci dessus ne font que stocké l'adresse(arborscence du fichier sur le dur de l'utilisateur qui fait l'upload) du fichier dans la variable $fichier de type txte.
 
Cela me permettrai ensuite de concaténer l'adresse du dossier exam avec la variable $fichier puis d'afficher une liste de tous ces fichiers.
 
Voila j'espere que vous m'avez compris et attend avec impatience vos réponsse.

Reply

Marsh Posté le 25-03-2004 à 18:13:27   

Reply

Marsh Posté le 27-03-2004 à 13:23:53    

"Or pour l'instant les 2 codes ci dessus ne font que stocké l'adresse(arborscence du fichier sur le dur de l'utilisateur qui fait l'upload) du fichier dans la variable $fichier de type txte. "
 
ne dis tu pas ça parce que tu travailles en local ?
 
normalement quand tu utilises un champ de type file et que tu postes, tu récuperes dans la variable $fichier l'url du fichier temporaire uploadé sur ton serveur, que tu peux ensuite copier où tu veux

Reply

Marsh Posté le 27-03-2004 à 17:06:27    

oui tout a fait c'est ca

Reply

Marsh Posté le 27-03-2004 à 17:08:59    

je te remercie de m'avoir répondu
mais ca y est j'ai réussi à faire ce que je voulé.
le formulaire marche je stocke bien les fichiers dans un dossier choisi et j'enregistre son nom dans le champ fichier.
Je récupere ensuite mes fichier par concatenetion du l'url et du nom et stocke te tout dans un tableau

Reply

Marsh Posté le 27-03-2004 à 17:16:09    

Probleme cela marche nickel sur easy php mais lorsque je charge le tout sur le net la partie formulaire fonctionne mais le fichier a du mal a charger.
De plus les fichier deja stocké pose probleme. Si lorsque je clique sur le fichier, je choisi ouvrir le fichier, celui ci ce telecharge bien et lorsqu'il s'ouvre il fait une erreur de type "le fichier n'existe pas sur le serveur". Par contre si je choisi telecharger il se telecharge et quand je l'ouvre depuis mon dur il y a pas de probleme.
Voila c'est bizarre et je n'y comprend rien !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed