> Tous les forums > Forum des Webmasters
 envoie de photo par formulaire
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
lascapen
  Posté le 26/05/2008 @ 23:58 
Aller en bas de la page 
Petit astucien

bonsoir a tous

j ai crée un formulaire tout simple "pour passer des annonces de vente de bateau "qui arrive directement dans ma boite mail

je voudrais que les personne me joigne la photo ou un fichier dans le formulaire

quel code dois-je insérer

merci pour votre aide

Publicité
jdl68160
 Posté le 27/05/2008 à 19:04 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonsoir

Voici un petit script que j'utilise depuis pas mal de temps en .php

et cela nécessite 3 pages distinctes

Pour mettre le formulaire d'envoi.

  1. <p align="center"><form name="upload" enctype="multipart/form-data" method="post" action="upload.php">
  2. <input type="file" name="file" size="100">
  3. <br><br>Extentions des fichiers autorisés:<b> .txt / .doc / .pdf / .jpg / .ico/ .ppt / .xls/ .bmp / .gif / .zip </b><br>Pour les autres formats, merci de les mettres en <b>.zip</b><br><br>
  4. <input type="submit" name="bouton_submit" value="Envoyer le fichier">
  5. </p></form>

Pour la page qui gère le transfert

  1. <?php
  2. // ############################################################ //
  3. // Script pour Upload de fichier quelconque sur un serveur //
  4. // ############################################################ //
  5. // Infos : //
  6. // ------- //
  7. // Auteur : Fabien Guillod //
  8. // Email de l'auteur : f_guillod@bluewin.ch //
  9. // Date de création : 8 mars 2005 //
  10. // Dernière modification : 10 mars 2005 //
  11. // Version : 1.0.0 //
  12. // ############################################################ //
  13. // Fonctionnement : //
  14. // ---------------- //
  15. // 1. Test si l'utilisateur a choisi un fichier //
  16. // 2. Test si le fichier choisi est valide (si taille <> 0) //
  • // 3. Test si le taille du fichier est inférieure à la taille //
  • // max //
  • // 4. Test si l'extension est autorisée. //
  • // ############################################################ //
  • // Paramètrage : //
  • // ------------- //
  • // Ce script peut facilement être paramètré selon les besoins. //
  • // Le paramètrage se fait principalement par la définition des //
  • // variables globales. Voici les différentes variables : //
  • // //
  • // - $DESTINATION_FOLDER : contient le répertoire dans lequel //
  • // le fichier sera uploadé. Il est par défaut récupéré du //
  • // formulaire, mais peut très bien être remplacé par un url //
  • // en dur. //
  • // //
  • // - $MAX_SIZE : spécifie la taille maximale que le fichier à //
  • // uploader peut avoir. Attention, le taille est spécifiée //
  • // en octets. //
  • // //
  • // - $RETURN_LINK : Récupère automatiquement l'url de la page //
  • // web qui appelle ce script. Ce lien sert à créer des liens //
  • // de retour, qui sont toujours utiles. //
  • // //
  • // - $AUTH_EXT : Ce tableau contient toutes les extensions qui //
  • // peuvent être uploadées. On peut en rajouter ou en //
  • // supprimer si besoin est. //
  • // ############################################################ //
  • // ############################################################ //
  • // Définition des variable globales, modifiables à volonté //
  • // ############################################################ //
  • // Récupération du dossier dans lequel le fichier sera uploadé //
  • $DESTINATION_FOLDER = $_POST["c:/wamp/www/upload"]; //
  • // Taille maximale de fichier, valeur en bytes //
  • $MAX_SIZE = 3000000; //
  • // Récupération de l'url de retour //
  • $RETURN_LINK = $_SERVER['HTTP_REFERER']; //
  • // Définition des extensions de fichier autorisées (avec le ".")//
  • $AUTH_EXT = array(".txt", ".doc", ".pdf", ".jpg", ".ppt", ".xls", //
  • ".bmp", ".gif", ".zip", ".JPG", ".ico"); //
  • // ############################################################ //
  • // Fonction permettant de créer un lien de retour automatique
  • function createReturnLink(){
  • global $RETURN_LINK;
  • echo "<a href='".$RETURN_LINK."'>Retour vers la page de transfert</a><br>";
  • }
  • // Fonction permettant de vérifier si l'extension du fichier est
  • // autorisée.
  • function isExtAuthorized($ext){
  • global $AUTH_EXT;
  • if(in_array($ext, $AUTH_EXT)){
  • return true;
  • }else{
  • return false;
  • }
  • }
  • // On vérifie que le champs contenant le chemin du fichier soit
  • // bien rempli.
  • if(!empty($_FILES["file"]["name"])){
  • // Nom du fichier choisi:
  • $nomFichier = $_FILES["file"]["name"] ;
  • // Nom temporaire sur le serveur:
  • $nomTemporaire = $_FILES["file"]["tmp_name"] ;
  • // Type du fichier choisi:
  • $typeFichier = $_FILES["file"]["type"] ;
  • // Poids en octets du fichier choisit:
  • $poidsFichier = $_FILES["file"]["size"] ;
  • // Code de l'erreur si jamais il y en a une:
  • $codeErreur = $_FILES["file"]["error"] ;
  • // Extension du fichier
  • $extension = strrchr($nomFichier, ".");
  • // Si le poids du fichier est de 0 bytes, le fichier est
  • // invalide (ou le chemin incorrect) => message d'erreur
  • // sinon, le script continue.
  • if($poidsFichier <> 0){
  • // Si la taille du fichier est supérieure à la taille
  • // maximum spécifiée => message d'erreur
  • if($poidsFichier < $MAX_SIZE){
  • // On teste ensuite si le fichier a une extension autorisée
  • if(isExtAuthorized($extension)){
  • // Ensuite, on copie le fichier uploadé ou bon nous semble.
  • $uploadOk = move_uploaded_file($nomTemporaire, $DESTINATION_FOLDER.$nomFichier);
  • if($uploadOk){
  • echo("Le transfert a réussi !<br><br>");
  • echo(createReturnLink());
  • }else{
  • echo("Le transfert a échoué !<br><br>");
  • echo(createReturnLink());
  • }
  • }else{
  • echo ("Les fichiers avec l'extension $extension ne peuvent pas être transférer !<br>");
  • echo (createReturnLink()."<br>");
  • }
  • }else{
  • // Taille maxi
  • $tailleKo = $MAX_SIZE / 3000;
  • echo("Vous ne pouvez pas transférer de fichiers dont la taille est supérieure à : $tailleKo Ko.<br>");
  • echo (createReturnLink()."<br>");
  • }
  • }else{
  • echo("Le fichier choisi est invalide !<br>");
  • echo (createReturnLink()."<br>");
  • }
  • }else{
  • echo("Vous n'avez pas choisi de fichier !<br>");
  • echo (createReturnLink()."<br>");
  • }
  • ?>
  • Pour la page de remerciement

    1. <p align="center"><font face="times new roman" size="5" color="0000FF"><b>
    2. <?php
    3. include("uploader.php");
    4. ?> </b>
    5. <p align="center">
    6. <font face color="0033FF" size="4">Merci pour votre téléchargement
    7. </p>

    J'ai modifié les fichiers pour ma propre utilisation.

    @++

    Page : [1] 
    Page 1 sur 1

    Vous devez être connecté pour participer à la discussion.
    Cliquez ici pour vous identifier.

    Vous n'avez pas de compte ? Créez-en un gratuitement !
    Recevoir PC Astuces par e-mail


    La Lettre quotidienne +226 000 inscrits
    Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

    Les bonnes affaires
    Une fois par semaine, un récap des meilleurs offres.

    Les fonds d'écran
    De jolies photos pour personnaliser votre bureau. Une fois par semaine.

    Les nouveaux Bons Plans
    Des notifications pour ne pas rater les bons plans publiés sur le site.

    Les bons plans du moment PC Astuces

    Tous les Bons Plans
    99,99 €NAS Synology DS120J à 99,99 €
    Valable jusqu'au 28 Juillet

    Amazon propose actuellement le NAS Synology DS120J à 99,99 €. Ce NAS à 1 baie va vous permettre de mettre en place un espace de stockage sécurisé sur votre réseau local et peut aussi faire office de serveur multimédia, DLNA, serveur web, client ftp, bittorent, ... On le trouve ailleurs à partir de 115 € . A l'intérieur, vous devrez glisser un disque dur au format 3.5 pouces.


    > Voir l'offre
    13,99 €Coffret d'embouts de vissage Bosch 32 pièces à 13,99 €
    Valable jusqu'au 28 Juillet

    Amazon fait une promotion sur le coffret de 32 pièces d'embouts de vissage qui passe à 13,99 € au lieu de 16 €. Il comporte un porte embout universel à changement rapide et des embouts PH1/PH2/PH2/PH3/PZ1/PZ2/PZ2/PZ3/HEX 3/HEX 4/HEX 5/HEX 6/T10/T15/T20/T20/T25/T27/T30/T40.


    > Voir l'offre
    18,26 €Webcam BCMaster FullHD à 18,26 € (via coupon + code V5JDSAJD)
    Valable jusqu'au 28 Juillet

    Amazon propose la webcam Webcam BCMaster (groupe Aukey) FullHD à 18,99 € grâce à un coupon à activer sur la page du produit. On la trouve habituellement autour de 29,99 €. Cette webcam offre une résolution FullHD 1080p pour une vidéo claire et nette et intègre deux microphones réduisant les bruits de fond. De plus, un cache de protection vous offre une sécurité supplémentaire et une tranquillité d'esprit lorsque vous n'utilisez pas la webcam. Elle est compatible Windows, Mac et Android. 


    > Voir l'offre

    Sujets relatifs
    probleme envoie formulaire
    envoie formulaire dreamweaver
    envoie formulaire (résolu)
    photo jointe a un formulaire
    Photo dans formulaire
    Envoie direct de formulaire avec Namo webeditor
    Rendre une photo non enregistrable
    Site de mariage - Formulaire d'inscription
    Formulaire qui ne fonctionne pas avec Joomla
    Formulaire d'envoi de message
    Plus de sujets relatifs à envoie de photo par formulaire
     > Tous les forums > Forum Forum des Webmasters