Envoi de fichier par mail

cs_Patrick2 Messages postés 1 Date d'inscription jeudi 16 septembre 2004 Statut Membre Dernière intervention 16 septembre 2004 - 16 sept. 2004 à 22:38
Damocles67 Messages postés 8 Date d'inscription samedi 11 mars 2006 Statut Membre Dernière intervention 28 janvier 2014 - 11 mars 2006 à 10:48
Bonjour,

Je debute en CF (en fait je suis amené à travailler sur un site développé en cold fusion par des gens qui ne le font plus) et je voudrais créer une page qui me permette d'envoyer par mail un fichier qui se trouve sur un autre disque.
Sachant que je récupère mes variables suite à deux requetes distinctes voici ce à quoi j'avais pensé :

<cfoutput query="Requete1">
<cffile action="copy"
source="P:\#Nom_du_Fichier#"
destination="E:\Site\Dossier\#Nom_du_fichier#">
<cfmailparam file="../Dossier/#Nom_du_fichier#">
</cfoutput>

<cfoutput query="Requete2">
<cfmail
from="moi@free.fr"
to="#email#"
subject="Envoi de fichier"
Ci-joint le fichier demandé
</cfmail>
</cfoutput>

Pensez vous que cela puisse fonctionner ou y a t'il une meilleure méthode ?

Merci.

2 réponses

cs_Metrox Messages postés 267 Date d'inscription jeudi 19 septembre 2002 Statut Membre Dernière intervention 8 septembre 2013
18 sept. 2004 à 13:30
Ben,
cela m'étonerais fort :-)

Deja tu ne fermes pas ta balise cfmail :p
deuxio, tu l'imbriques dans un cfoutput :s

essaie sa:

<cfoutput query="Requete1">
<cffile action="copy"
source="P:\#Nom_du_Fichier#"
destination="E:\Site\Dossier\#Nom_du_fichier#">
<cfmailparam file="../Dossier/#Nom_du_fichier#">
</cfoutput>

<cfmail
from="moi@free.fr"
to="#email#"
subject="Envoi de fichier" query="requete2">
Ci-joint le fichier demandé
</cfmail>

Pas sur que ca marche...mais bon :)

M@x ---> Go on www.metrox.be
0
Damocles67 Messages postés 8 Date d'inscription samedi 11 mars 2006 Statut Membre Dernière intervention 28 janvier 2014
11 mars 2006 à 10:48
Il faut d'abord envoyer les fichiers sur le serveur par upload.
Ne connaissant pas toujours les chemins et répertoires chez l'hébergeur une requête automatique :

<!-- début du 1er formulaire (form_fichier)-->
<cfform action="form_envoi.cfm" method="post" enctype="multipart/form-data">
De :,
<cfinput type="text" name="lefrom" size="50" required="yes" message="indiquer l'expéditeur !">,

----

A : &nbsp;,
<cfinput type="text" name="leto" size="50" value="" required="yes" message="indiquer le destinataire !">,

----

Sujet :&nbsp;,
,

----

<textarea name="lemsg" cols="80" rows="3" required="no"></textarea>,

----

Fichier attaché :&nbsp;,
,

----

</cfform>

<!-- début du 2ème formulaire (form_envoi)-->
<!-- 1) recherche automatique du répertoire sur votre serveur - 'images' est le répertoire de stockage ou bien le changer-->
<cfset variable.DestDir = GetDirectoryFromPath(GetTemplatePath()) & "images">
<cfif #filename# is not "">
<cffile action="UPLOAD" filefield="filename" destination="#variable.DestDir#" nameconflict="OVERWRITE">
<!-- 2) indication du répertoire de stockage sur votre serveur - 'images' est le répertoire de stockage-->
<!-- cffile action="UPLOAD" filefield="filename" destination="d:\votre\chemin" nameconflict="OVERWRITE"-->


<cfset f = "#File.serverdirectory#/#file.serverfile#">
<cfset fichier_attache = #Replace(f,"/","","ALL")#>
</cfif>

<cfmail to="#leto#" from="#lefrom#" subject="#lesujet#">#lemsg#
<cfif #filename# is not "">
<cfmailparam file="#fichier_attache#">
pas de photos
</cfif>
</cfmail>
<!-- vérification pour les essais - facultatif-->
<cfoutput>
De : #lefrom#

A : #leto#

<cfif #lesujet# is not "">Sujet : #lesujet#<cfelse>pas de sujet</cfif>

<cfif #lemsg# is not "">Message : #lemsg#<cfelse>pas de message</cfif>

<cfif #filename# is not "">Fichier : #fichier_attache#<cfelse>pas de photo</cfif>
</cfoutput>

selon les besoins il faut adapter

bon courage
0
Rejoignez-nous