Problème sur les pieces jointes avec CDONTS

Problème sur les pieces jointes avec CDONTS - ASP - Programmation

Marsh Posté le 09-09-2005 à 12:13:04    

Bonjours
Je dois faire un script qui permet d'envoyer des pièces jointes. Dans un fichier vbscript cela fonctionne parfaitement
mais lorsque je le place dans un fichier ASP là il n'y arrive et l'erreur affiché est tres vague.
"Erreur non spécifiée"
Lorsque je retire la ligne "attachfile" sa passe. J'ai aussi testé sur un autre server.
Il y a t'il une chose à savoir ou que j'ai oublié ?
Merci

Code :
  1. <%
  2. Dim Mailer
  3. 'on crée l'objet CDONTS
  4. Set Mailer = Server.CreateObject("CDONTS.NewMail" )
  5. ' la ligne suivante ne fonctionne pas
  6. Mailer.From = "titi@titi.fr"
  7. ' le champ from doit impérativement contenir une adresse email valide
  8. ' dans le cas contraire le serveur smtp revoie une erreur 501
  9. ' au composant com
  10. Mailer.From =  "titi@titi.fr"
  11. Mailer.To =  "titi@titi.fr"
  12. Mailer.Subject = "ceci est un sujet"
  13. Mailer.Body = "un message pour dire coucou"
  14. Mailer.AttachFile("16x16extdoc.gif" )
  15. Mailer.Send
  16. Set Mailer = Nothing
  17. %>


Message édité par Berceker United le 09-09-2005 à 15:06:08
Reply

Marsh Posté le 09-09-2005 à 12:13:04   

Reply

Marsh Posté le 09-09-2005 à 12:51:00    

Bonjour,
 
En ASP, utilise plutot CDO. Chez moi, ça fonctionne nickel (smtp + exchange)

Reply

Marsh Posté le 09-09-2005 à 14:44:28    

Merci pour ton intervention.
J'ai essayé mais j'ai le message suivant :
"Le protocole spécifié est inconnu" et la ligne d'erreur correspond au "AddAttachment"
Voici le code utilisé
 

Code :
  1. With CreateObject("CDO.Message" )
  2. .From="toto@toto.com"
  3. .To="toto@toto.com"
  4. .Subject="Sujet du message"
  5. .TextBody="Texte du Message."&VbNewLine&"Signature"'( ou .HTMLBody="Texte du Message en HTML"
  6. .AddAttachment("16x16extpot.gif" )
  7. '.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing" ) = 2
  8. '.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver" ) = "ServeurSMTP"
  9. '.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport" ) = 25
  10. '.Configuration.Fields.Update
  11. 'On Error Resume Next
  12. .Send
  13. If Err Then MsgBox "Le message n'a pas pu être expédié."
  14. On Error GoTo 0
  15. End With


 
Je finis par me demander si cela ne provient pas du server vu qu'en vb cela fonctionne.

Reply

Marsh Posté le 09-09-2005 à 15:02:49    

et heu ton formulaire tu l'envoi comment ? multipart/formdata ? ou plaintext ?

Reply

Marsh Posté le 09-09-2005 à 15:04:42    

multipart/form-data
Mais j'ai déjà testé en placant le nom du fichier en dure et dans le meme repertoire que le fichier en question.  
Donc c'est pas lié au chemin ou autre de ce genre.


Message édité par Berceker United le 09-09-2005 à 15:05:48
Reply

Marsh Posté le 09-09-2005 à 15:09:13    

Re,
 
Pourquoi les lignes Configuration.Fields ... sont en commentaires ?

Reply

Marsh Posté le 09-09-2005 à 15:12:47    

En faite  j'ai pris ce script d'un site et cette partie fait planter le script.  
Si je supprime la ligne concernant les pieces jointes il y a pas de problème le mail est envoyé et reçu.
Précision , je suis derrière exchange.


Message édité par Berceker United le 09-09-2005 à 15:13:35
Reply

Marsh Posté le 09-09-2005 à 15:20:35    

Re,
 
Je te mets le code que j'utilise et qui fonctionne chez moi :
 
<%
 
Set oMail = Server.CreateObject("CDO.Message" )  
Set oMailConfig = Server.CreateObject ("CDO.Configuration" )  
 
oMailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver" ) = "SERVER_EXCHANGE"  
oMailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport" ) = 25  
oMailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing" ) = 2
oMailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout" ) = 60  
oMailConfig.Fields.Update  
Set oMail.Configuration = oMailConfig  
 
oMail.Sender = "Les<space>infos<space>du<space>jour"
 
oMail.From = "INFOS"
'oMail.From = "speedy.gonzales@bipbip.fr"
'oMail.To = "bozzo.clown@cirque.fr"
 
'oMail.Cc = "le.clown@rire.fr"
oMail.Bcc = "zorro.masque@tv.fr"
oMail.AddAttachment("c://autoexec.bat" )
oMail.AddAttachment("c://config.sys" )
 
oMail.Fields("urn:schemas:httpmail:importance" ).value = 0 ' Basse = 0 ; Normal = 1(défaut) ; Haute = 2
oMail.Fields.Update()
 
oMail.Subject = "Sujet du message ..."
oMail.HTMLBody = "<b>Contenu du message ...</b>" & vbcrlf ' HTML
oMail.TextBody = "suite du contenu" ' TEXTE
 
oMail.CreateMHTMLBody "file://C:\Inetpub\wwwroot\Essai\Message.htm"
 
oMail.Send  
 
Set oMailConfiguration = Nothing  
Set oMailConfig = Nothing  
Set oMail = Nothing  
 
%>
 
PS : Vérifie le chemin du fichier joint

Reply

Marsh Posté le 09-09-2005 à 15:45:13    

Merci super cool mais j'ai un message d'erreur suivant.
"Le transport a échoué dans sa connexion au serveur."

Reply

Marsh Posté le 09-09-2005 à 15:54:35    

Re,
 
Assure toi que le port 25 n'est pas interdit. Car comme tu peux le remarquer, les propriétés FROM ou SENDER peuvent contenir n'importe quoi (idéal pour du spam).

Reply

Marsh Posté le 09-09-2005 à 15:54:35   

Reply

Marsh Posté le 09-09-2005 à 16:07:16    

Super sympa les gars. J'ai posé la question a mon responsable informatique et effectivement le port 25 est vérouillé pour l'exterieur en voyant le script de pc75  j'ai placé le nom du server exchange là ou il fallait (bouletman :D je ne savais pas)  
 
Merci beaucoup à tous !


Message édité par Berceker United le 09-09-2005 à 16:07:45
Reply

Marsh Posté le 09-09-2005 à 16:10:19    

Re,
 
J'espère que je n'ai pas foutu la m..... !

Reply

Marsh Posté le 09-09-2005 à 16:25:06    

Non du tous il y a pas eu de probleme mais j'étais été averti qu'il fallais pas que je dépasse la limite de taille des pieces jointe. Mais merci quand parce que j'y ait passé la matiné.
:jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed