A voir également:
- Envoi image par email par un formulaire
- Comment creer un compte email - Guide
- Recherche par image - Guide
- Formulaire de réclamation facebook - Guide
- Image iso - Guide
- Envoi de sms par internet - Guide
3 réponses
Bonsoir,
Tu as la réponse ici http://www.commentcamarche.net/forum/affich-26286972-envoil-email-avec-php
Tu as la réponse ici http://www.commentcamarche.net/forum/affich-26286972-envoil-email-avec-php
AppS
Messages postés
36
Date d'inscription
vendredi 19 octobre 2012
Statut
Membre
Dernière intervention
28 octobre 2014
15
20 oct. 2012 à 22:51
20 oct. 2012 à 22:51
Bonsoir,
Imaginons d'un coté la page où l'utilisateur souhaites compléter le formulaire :
Bon, je viens de le faire en deux minutes, il y a des améliorations à effectuer mais dans l'ensemble c'est fonctionnel. (Ps: $error & $error_m servent d'annonce à afficher dans la page)
Maintenant la page de téléchargement qui correspond, dans le code précédent à :
"VOTRE_PAGE_DE_TELECHARGEMENT.php";
Voilà... Autre chose bien pratique à mettre par la suite :
Mettre dans une bdd les url qui pointes vers les fichiers dispo en téléchargement.
Histoire de faire passer à "VOTRE_PAGE_DE_TELECHARGEMENT.php" un id
qui correspondra au fichier en question ;)
Imaginons d'un coté la page où l'utilisateur souhaites compléter le formulaire :
<form method="POST" action="#"> <input type="text" name="name" value="Votre prénom" /> <input type="text name="mail" value="votre@mail.fr" /> <input type="submit" value="Envoyer" /> </form>
<?php /* CE CODE AVANT TOUT CODE HTML */ if(!empty($_POST['name']) && !empty($_POST['mail'])) { $now = date('d-m-Y H:i:s'); $to = "VOTRE_MAIL"; $from = "VOTRE_MAIL_SERVER"; $subject = "VOTRE SUJET"; $msg = 'l\'image ........ a été téléchargé par : '.$_POST['mail']; $msg .= ' le '.$now; $headers = 'VOS HEADERS DE MAILS'; $headers .= 'VOS AUTRES HEADERS etc...'; if(mail($to, $subject, $message, $headers)) { header('Location: VOTRE_PAGE_DE_TELECHARGEMENT.php'); }else{ $error = true; $error_m = "Une erreur c'est produite."; } } ?>
Bon, je viens de le faire en deux minutes, il y a des améliorations à effectuer mais dans l'ensemble c'est fonctionnel. (Ps: $error & $error_m servent d'annonce à afficher dans la page)
Maintenant la page de téléchargement qui correspond, dans le code précédent à :
"VOTRE_PAGE_DE_TELECHARGEMENT.php";
<?php // information concernant le fichier à télécharger $fichier = 'mon_repertoire/mon_fichier.jpg'; $nom_fichier = 'mon_fichier.jpg'; // téléchargement du fichier header('Content-disposition: attachment; filename='.$nom_fichier); header('Content-Type: application/force-download'); header('Content-Transfer-Encoding: fichier'); header('Content-Length: '.filesize($fichier)); header('Pragma: no-cache'); header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0'); header('Expires: 0'); readfile($fichier); ?>
Voilà... Autre chose bien pratique à mettre par la suite :
Mettre dans une bdd les url qui pointes vers les fichiers dispo en téléchargement.
Histoire de faire passer à "VOTRE_PAGE_DE_TELECHARGEMENT.php" un id
qui correspondra au fichier en question ;)
Bonjour,
J'aimerais plus de renseignements car je ne sais trop programmer.
Je ne comprends pas ce que je dois remplacé ici :
Puis il y a écrit ;
Donc je le met avant le code HTML ou comme tu as fais ?
Puis tu as mis également :
Je met quoi ici ??
Et enfin, il y a :
Je met quoi à la place de # ?
Merci.
J'aimerais plus de renseignements car je ne sais trop programmer.
Je ne comprends pas ce que je dois remplacé ici :
$headers = 'VOS HEADERS DE MAILS'; $headers .= 'VOS AUTRES HEADERS etc...';
Puis il y a écrit ;
<?php /* CE CODE AVANT TOUT CODE HTML */
Donc je le met avant le code HTML ou comme tu as fais ?
Puis tu as mis également :
$from = "VOTRE_MAIL_SERVER";
Je met quoi ici ??
Et enfin, il y a :
<form method="POST" action="#">
Je met quoi à la place de # ?
Merci.
AppS
Messages postés
36
Date d'inscription
vendredi 19 octobre 2012
Statut
Membre
Dernière intervention
28 octobre 2014
15
21 oct. 2012 à 11:50
21 oct. 2012 à 11:50
Bonjour,
Alors pour $headers il te faut mettre les header mail c'est à dire quelque chose comme :
Ensuite le code "/* CE CODE AVANT TOUT CODE HTML*/ doit en effet être avant ton DOCTYPE puis-ce que php risque de se servir d'un header pour rediriger sur la page de téléchargement au cas où le mail est bien envoyé.
$from = "votre_mail_server"; c'est en réalité l'adresse email d'expédition.
Tu peux y mettre tout ce que tu veux 'fbi@elysee.fr' ou autre.
Pour le <form method="POST" action="#"> le # correspond à la page en cours.
C'est à dire où il devrait y avoir le code php de redirection + l'envois du mail.
Donc il ne sert à rien d'y toucher.
Alors pour $headers il te faut mettre les header mail c'est à dire quelque chose comme :
$headers = 'From: webmaster@example.com' . "\r\n" . 'Reply-To: webmaster@example.com' . "\r\n" . 'X-Mailer: PHP/' . phpversion();
Ensuite le code "/* CE CODE AVANT TOUT CODE HTML*/ doit en effet être avant ton DOCTYPE puis-ce que php risque de se servir d'un header pour rediriger sur la page de téléchargement au cas où le mail est bien envoyé.
$from = "votre_mail_server"; c'est en réalité l'adresse email d'expédition.
Tu peux y mettre tout ce que tu veux 'fbi@elysee.fr' ou autre.
Pour le <form method="POST" action="#"> le # correspond à la page en cours.
C'est à dire où il devrait y avoir le code php de redirection + l'envois du mail.
Donc il ne sert à rien d'y toucher.
AppS
Messages postés
36
Date d'inscription
vendredi 19 octobre 2012
Statut
Membre
Dernière intervention
28 octobre 2014
15
21 oct. 2012 à 23:06
21 oct. 2012 à 23:06
C'est tout à fait normal. Le php ne fait qu'envoyer un mail et rediriger l'utilisateur vers la page, il n'affiche en lui même rien à l'écran. Le php ne sert qu'à exécuter du code coté serveur. Penses à mettre ça dans une page html avec toutes les balises nécessaires.
Et lorsque quelqu'un va remplir les champs du formulaire et le soumettre ça t'enverra un mail et fera en sorte que l'utilisateur soit sur la page de téléchargement.
Pour ne pas avoir d'erreur je te conseil fortement de remplir les champs php complètement. le $to n'est pas valide.
Et lorsque quelqu'un va remplir les champs du formulaire et le soumettre ça t'enverra un mail et fera en sorte que l'utilisateur soit sur la page de téléchargement.
Pour ne pas avoir d'erreur je te conseil fortement de remplir les champs php complètement. le $to n'est pas valide.
Une fois complété le formulaire, je reviens sur le formulaire avec juste mail et prénom. Une fois validé, je ne reçoit rien ! Ni mail, ni prénom, ni image :'(
Si tu ne comprends pas, ceci mais je veux recevoir par mail :
<form action="copy.php3">
<!-- c'est ca qui nous intéresse : -->
<input name="Filezone" type="file">
<input type="submit" value="Uploader">
</form>
puis dans copy.php3
<?
copy ($Filezone,"Destination");
?>
Ou sinon, tu le fais pas par mail, mais tu fais quelque chose pour que le formulaire avec l'image arrive dans un endroit de mon site :)
AppS
Messages postés
36
Date d'inscription
vendredi 19 octobre 2012
Statut
Membre
Dernière intervention
28 octobre 2014
15
22 oct. 2012 à 20:55
22 oct. 2012 à 20:55
Ah, excuses moi je n'avais pas saisi !
Tu souhaites que les utilisateurs t'envois leurs images et recevoir une copie de tout ça par mail.
je te regarde ça dans la soirée si j'ai le temps ;)
Tu souhaites que les utilisateurs t'envois leurs images et recevoir une copie de tout ça par mail.
je te regarde ça dans la soirée si j'ai le temps ;)
Nan c'bon, j'ai demandé à un ami qui m'a donné un site avec lequel j'ai fais ceci :
Mais merci ;)
<script type="text/javascript" src="http://form.jotformeu.com/jsform/22965077600354"></script>
Mais merci ;)