recuperer une photo d'un formulaire par email

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : recuperer une photo d'un formulaire par email

merci

par karenma » 27 déc. 2007, 22:27

ok merci à tous

par Ryle » 21 déc. 2007, 11:12

Le code que tu as récupéré sans essayer de comprendre ce qu'il faisait va envoyer le fichier nommé "nom_du_fichier.jpg" qu'il pense trouver sur le serveur dans le dossier ou se trouve le script, dans un mail.

J'imagine que tu n'as aucun fichier nommé "nom_du_fichier.jpg", ce qui justifierait assez facilement le fait que php soit incapable de le lire avec la fonction file_get_contents().

Indique lui où se trouve le fichier qui a été uploadé, et il aura beaucoup plus de facilité à le trouver pour te l'envoyer... Recherche du côté de $_FILES et de l'upload de fichiers. Ces sujets ont souvent été abordés et la doc est suffisament complète :)

pb

par karenma » 21 déc. 2007, 08:58

Bonjour
j'ai crée une page avec un formulaire

Code : Tout sélectionner

<form id="form1" name="form1" method="post" action="email.php"> <input type="file" name="photo" size="20"/> <input type="submit" name="Submit" value="Envoyer" /> </form>

puis j'ai copié le code du lien que tu m'as donné sur une nouvelle page appelée email.php
ou j'ai changé la ligne $email_expediteur et j'ai mis mon email



Code : Tout sélectionner

<?php //----------------------------------------------- //DECLARE LES VARIABLES //----------------------------------------------- $email_expediteur='[email protected]'; $email_reply='[email protected]'; $message_texte='Bonjour,'."\n\n".'Voici un message au format texte'; $message_html='<html> <head> <title>Titre</title> </head> <body>Test de message</body> </html>'; //----------------------------------------------- //GENERE LA FRONTIERE DU MAIL ENTRE TEXTE ET HTML //----------------------------------------------- $frontiere = '-----=' . md5(uniqid(mt_rand())); //----------------------------------------------- //HEADERS DU MAIL //----------------------------------------------- $headers = 'From: "Nom" <'.$email_expediteur.'>'."\n"; $headers .= 'Return-Path: <'.$email_reply.'>'."\n"; $headers .= 'MIME-Version: 1.0'."\n"; $headers .= 'Content-Type: multipart/mixed; boundary="'.$frontiere.'"'; //----------------------------------------------- //MESSAGE TEXTE //----------------------------------------------- $message = 'This is a multi-part message in MIME format.'."\n\n"; $message .= '--'.$frontiere."\n"; $message .= 'Content-Type: text/plain; charset="iso-8859-1"'."\n"; $message .= 'Content-Transfer-Encoding: 8bit'."\n\n"; $message .= $message_texte."\n\n"; //----------------------------------------------- //MESSAGE HTML //----------------------------------------------- $message .= '--'.$frontiere."\n"; $message .= 'Content-Type: text/html; charset="iso-8859-1"'."\n"; $message .= 'Content-Transfer-Encoding: 8bit'."\n\n"; $message .= $message_html."\n\n"; $message .= '--'.$frontiere.'--'."\n"; //----------------------------------------------- //PIECE JOINTE //----------------------------------------------- $message .= 'Content-Type: image/jpeg; name="nom_du_fichier.jpg"'."\n"; $message .= 'Content-Transfer-Encoding: base64'."\n"; $message .= 'Content-Disposition:attachement; filename="nom_du_fichier.jpg"'."\n\n"; $message .= chunk_split(base64_encode(file_get_contents('nom_du_fichier.jpg')))."\n"; if(mail($destinataire,$sujet,$message,$headers)) { echo 'Le mail a été envoyé'; } else { echo 'Le mail n\'a pu être envoyé'; } ?>



mais il me renvoie l'erreur




Warning: file_get_contents(nom_du_fichier.jpg) [function.file-get-contents]: failed to open stream: No such file or directory in /mnt/140/sda/4/e/nomdudossier/email.php on line 69

Warning: mail() [function.mail]: Invalid mail. to = [] in /mnt/140/sda/4/e/nomdudossier/email.php on line 71
Le mail a été envoyé

je ne comprends rien merci pour votre aide

Re: pb d'email

par DocType » 20 déc. 2007, 23:20

Bonjour
j'ai crée une page avec un formulaire

Code : Tout sélectionner

<form id="form1" name="form1" method="post" action="email.php"> <input type="file" name="photo" size="20"/> <input type="submit" name="Submit" value="Envoyer" /> </form>
puis j'ai copié le code du lien que tu m'as donné sur une nouvelle page appelée email.php
ou j'ai changé la ligne $email_expediteur et j'ai mis mon email

et apparition du message d'erreur suivant:

Warning: file_get_contents(nom_du_fichier.jpg) [function.file-get-contents]: failed to open stream: No such file or directory in /mnt/140/sda/4/e/nomdudossier/email.php on line 69

Warning: mail() [function.mail]: Invalid mail. to = [] in /mnt/140/sda/4/e/nomdudossier/email.php on line 71
Le mail a été envoyé


merci d'avance
Le code serait utile :wink:

pb d'email

par karenma » 20 déc. 2007, 22:15

Bonjour
j'ai crée une page avec un formulaire

Code : Tout sélectionner

<form id="form1" name="form1" method="post" action="email.php"> <input type="file" name="photo" size="20"/> <input type="submit" name="Submit" value="Envoyer" /> </form>
puis j'ai copié le code du lien que tu m'as donné sur une nouvelle page appelée email.php
ou j'ai changé la ligne $email_expediteur et j'ai mis mon email

et apparition du message d'erreur suivant:

Warning: file_get_contents(nom_du_fichier.jpg) [function.file-get-contents]: failed to open stream: No such file or directory in /mnt/140/sda/4/e/nomdudossier/email.php on line 69

Warning: mail() [function.mail]: Invalid mail. to = [] in /mnt/140/sda/4/e/nomdudossier/email.php on line 71
Le mail a été envoyé


merci d'avance

par AB » 20 déc. 2007, 21:41

Si j'ai bien compris tu as un pb d'envoi de mail avec pièces jointes.

Une bonne adresse ici
http://www.vulgarisation-informatique.c ... ece_jointe

recuperer une photo d'un formulaire par email

par karenma » 20 déc. 2007, 16:28

Bonjour,

J'ai créé un formulaire comprenant le bouton parcourir pour récupérer une photo
(<input type="file" name="photo" size="20"/>)


Le formulaire s'envoi automatiquement à mon adresse email mais le pb c'est que j'ai tous les champs sauf la photo.

Comment puis je récupérer la photo


Merci d'avance