2016-06-22 6 views
1

お客様が私の電子メール(ADM)を送信できる私のサイトに連絡フォームを作成しようとしています。 これを行うにはstmpクライアントを使用していますが、連絡先フォームから電子メールを送信すると、自分宛に送信するように見えます。 ここにコードがあります。C#連絡フォーム

MailMessage mailMessage = new MailMessage(); 
     MailAddress fromAddress = new MailAddress(command.Email); //sender email address 
     mailMessage.From = fromAddress; 
     mailMessage.To.Add("[email protected]"); //receiver email address    
     mailMessage.Body = command.Message; 
     mailMessage.IsBodyHtml = true; 
     mailMessage.Subject = "Contact Us"; 

     SmtpClient smtpClient = new SmtpClient(); 
     smtpClient.Host = "smtp.gmail.com"; 
     smtpClient.Port = 587; 
     smtpClient.EnableSsl = true; 
     smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; 
     smtpClient.Credentials = new System.Net.NetworkCredential("[email protected]", "password"); 
     smtpClient.Send(mailMessage); 

私は正しいメールを設定することで、顧客から受け取ることができますが、自分ではできません。

To me Image

+1

が表示されますメールの署名にあなたも他の受信者からの電子メールを送信することができないかもしれません。技術的には、FROMまたはREPLY-TOヘッダーを任意の値に設定できますが、SMTPプロバイダ(Gmail)はこれを欺瞞的な試みとして見て、設定したFROMヘッダーを変更する可能性があります。それはちょうど投機ですが、あなたが見るものを説明します。 –

+0

私は誰が私に電子メールを送っているのか、どうすれば分かりますか? – Biellx

+0

送信者の電子メールアドレスを本文または件名に入れてください – stuartd

答えて

0

、GoogleのSMTPサーバーは、自動的にログインするために使用する資格情報と一致するフィールドからの変更点。SMTPサーバは誰もが任意のアドレスからメールを送信することを可能にした場合、それはおそらく、他のメールから信頼されることはありませんサーバーは無視され、スパムとしてマークされます。

+0

うーん、スー、誰がメールを送信しているのですか? oO – Biellx

0

@tsandyの回答に加えて、私が見ているように変更する必要があるものがあります。だから私はcommand.Emailは顧客の電子メールアドレスだと思います。コードは次のようになります。この場合

MailMessage mailMessage = new MailMessage(); 
MailAddress fromAddress = new MailAddress("[email protected]"); //sender email address 
mailMessage.From = fromAddress; 
mailMessage.To.Add("[email protected]"); //receiver email address    
mailMessage.Body = command.Message; 
mailMessage.IsBodyHtml = true; 
mailMessage.DisplayName = command.email; //This line is added 
mailMessage.Subject = "Contact Us"; 

SmtpClient smtpClient = new SmtpClient(); 
smtpClient.Host = "smtp.gmail.com"; 
smtpClient.Port = 587; 
smtpClient.EnableSsl = true; 
smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; 
smtpClient.Credentials = new System.Net.NetworkCredential("[email protected]", "password"); 
smtpClient.Send(mailMessage); 

あなたは自分自身にメールを送るようになりますが、あなたは、少なくとも顧客の電子メール

関連する問題