IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Pièces jointe depuis formulaire. [Fait]


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 98
    Points : 39
    Points
    39
    Par défaut Pièces jointe depuis formulaire.
    bonjour,
    j'ai mis en place un formulaire tout simple nom prenom...
    je souhaiterai ajouter a ce formulaire 3-4 champs parcourire pour que l'on puisse m'envoyer des photos.
    j'ai donc dans ma partie formulaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <form action="formulaire-demande-validation.php" method="post">  
    <input type="hidden" value="send" name="action" />  
    <input size="30" name="nom" /><br/>  
    <input size="30" name="prenom" /><br/>  
     
    <input type='file' name='photo1' size='30'/> <br/>  
    <input type='file' name='photo2' size='30'/> <br/>  
    <input type='file' name='photo3' size='30'/><br/>  
    <input name="Envoyer" type="submit" />  
    </form>

    pour la partie traitement et c'est la que je couique.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    /* Email du destinataire*/  
    $destinataire = "monadresse@wanadoo.fr";  
     
    /* Récupération */  
    $nom = $_POST['nom'];  
    $prenom = $_POST['prenom'];  
     
    $msg .= "Internaute:\t$nom \t$prenom\n";   
     
    ???????? partie photo ou piece jointe ?????  
     
    mail($destinataire, "Message du site internet" ,$msg, "From: $email\r\nReply-To: $email");
    Pouvez vous m'aider pour la partie pieces jointes svp ?

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Bonjour,

    Consulte cet article :
    http://a-pellegrini.developpez.com/t...php/mail/#L3.4

    et n'oublie pas de mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    enctype= "multipart/form-data"
    dans ton <form>

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 98
    Points : 39
    Points
    39
    Par défaut
    Merci, j'ai bien suivi le tuto que vous m'avez donné.
    En suivant le tuto a la lettre et donc en mettant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     // Pièce jointe 1
    $file_name = 'image.jpg';
    je recoi bien mon image.jpg en piece jointe dans mon mail.

    maintenant si j'essai de récupérer le lien via un formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $file_name = $_POST['photo'];
    je recoi pas ma piece jointe.

    pourquoi ?

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Les fichiers uploadés sont traités dans $_FILES :
    http://antoine-herault.developpez.co...ls/php/upload/

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 98
    Points : 39
    Points
    39
    Par défaut
    oui mais les fichiers sont uploadé dans un répertoire alors que moi je veu juste qu'ils soit transmis en piece joint

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Et qu'est ce qui te bloque pour mettre le fichier en piece jointe ?

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 98
    Points : 39
    Points
    39
    Par défaut
    et bien en fait j'ai trouvé un autre systeme sans passer par le stockage de la piece jointe dans un repertoire.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    $file_name = 'image.jpg';
    if (file_exists($file_name))
    {
    	$file_type = filetype($file_name);
    	$file_size = filesize($file_name);
     
    	$handle = fopen($file_name, 'r') or die('File '.$file_name.'can t be open');
    	$content = fread($handle, $file_size);
    	$content = chunk_split(base64_encode($content));
    	$f = fclose($handle);
     
    	$msg .= '--'.$boundary."\r\n";
    	$msg .= 'Content-type:'.$file_type.';name='.$file_name."\r\n";
    	$msg .= 'Content-transfer-encoding:base64'."\r\n";
    	$msg .= $content."\r\n";
    }
    cette methode fonctionne en entrant le 'image.jpg' comme piece jointe (le la recoi bien.

    par contre comme la piece jointe serra choici par l'internaute je passe donc par mon formulaire et si je remplace 'image.jpg' par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $file_name = $_POST['photo'];
    je ne recoi plus de piece jointe.

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Bonjour,

    Qu'est ce que le champ "photo" et que contient-il ?

Discussions similaires

  1. Réponses: 5
    Dernier message: 09/10/2012, 14h23
  2. Lien vers pièce jointe depuis le corps du mémo
    Par reeenooo dans le forum Lotus Notes
    Réponses: 4
    Dernier message: 17/08/2010, 15h46
  3. [E-mail] Envoi de pièce jointe depuis un formulaire
    Par rashguir dans le forum Langage
    Réponses: 2
    Dernier message: 23/12/2009, 08h13
  4. Envoyer un fax + pièce jointe depuis Delphi
    Par delphine_lep dans le forum Web & réseau
    Réponses: 3
    Dernier message: 04/01/2008, 12h00
  5. Réponses: 4
    Dernier message: 10/08/2006, 20h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo