PDA

View Full Version : ارسال ایمیل



هزاره سوم
جمعه 10 آبان 1392, 18:06 عصر
کسی میتونه در مورد این کد به من کمک کنه و در موردش توضیح بده؟؟ :ناراحت:
چطور باید سمت سرور آپ کنم تا اجرا بشه؟؟
هاست و دامین هم دارم
کمک کنین لطفا :ناراحت:


protected void Button1_Click(object sender, EventArgs e)
{
string from = "example@yahoo.com";
MailMessage mail = new MailMessage();

mail.From = new MailAddress(from, "example@yahoo.com", System.Text.Encoding.UTF8);
mail.Subject = TextBox4.Text;
mail.IsBodyHtml = true;

//Admin a1 = new Admin();
//DataTable dt = a1.GetList("Admin");
//if (dt.Rows.Count > 0)
//{
// if (to.ToLower() == dt.Rows[0]["Username"].ToString().ToLower())
// mail.To.Add(dt.Rows[0]["Email"].ToString());
// else
// mail.To.Add(to);
//}

mail.Body = TextBox3.Text;
mail.BodyEncoding = System.Text.Encoding.UTF8;
mail.Priority = MailPriority.High;

SmtpClient smtp = new SmtpClient();

smtp.Credentials = new System.Net.NetworkCredential(from, "");
smtp.Port = 25;
smtp.Host = "example.ir";
//smtp.EnableSsl = true;

try
{
smtp.Send(mail);
//btnSend.Text = "succesfully";
}
catch (Exception exce)
{
//btnSend.Text = "faild!";
//Response.Write(exce.ToString());
}
}
}

هزاره سوم
جمعه 10 آبان 1392, 19:30 عصر
من اصلا کد هایی که واسه ارسال ایمیل هست رو متوجه نمیشم:افسرده:

mRizvandi
شنبه 11 آبان 1392, 11:23 صبح
تعیین آدرس فرستنده.
string from = example@yahoo.com;

یک شی نمونه از کلاس ایمیل:
MailMessage mail = new MailMessage();

مقدار دهی اولیه خصوصیات ایمیل:
mail.From = new MailAddress(from, "example@yahoo.com", System.Text.Encoding.UTF8); (تعیین آدرس فرستنده همراه با کدینگ و ...)
mail.Subject = TextBox4.Text; (تعیین موضوع ایمیل)
mail.IsBodyHtml = true; (تعیین نوع متن ایمیل، ایمیل می تواند به صورت Plain یا HTML ارسال شود.)


mail.Body = TextBox3.Text; (تعیین متن ایمیل)
mail.BodyEncoding = System.Text.Encoding.UTF8; (تعیین کدینگ متن ایمیل، اگر متن فارسی است حتما کدینگ UTF-8 رو استفاده کنید)
mail.Priority = MailPriority.High; (تعیین اولویت ایمیل، برا فرستنده با توجه به قابلیت ایمیلش ممکنه نشون داده بشه یا نشه)


تعیین مشخصات سرور ارسال کننده:
SmtpClient smtp = new SmtpClient(); )(ایمیلها از طریق پروتکل SMTP ارسال می شوند)
smtp.Credentials = new System.Net.NetworkCredential(from, "lukyman"); (تعیین اعتبار ایمیل فرستنده در پروتکل، شما باید از سایت خودتون استفاده کنید)
smtp.Port = 25; (شماره پورت فرستنده که برای ایمیل همین 25 هست)
smtp.Host = "example.ir"; (آدرس هاست فرستنده)
پیشنهاد میشه این اطلاعات در web.config تعیین شوند.




خب حالا که پروتکل و هاست مشخص شده، ایمیل هم که ساخته شده، می تونید اون رو ارسال کنید:
smtp.Send(mail);

موفق باشید

هزاره سوم
شنبه 11 آبان 1392, 11:42 صبح
من با یه کد دیگه عملیات ارسال ایمیل رو انجام دادم و از سرور رایگان گوکل استفاده کردم و ایمیل ارسال شد
حالا میخوام از هاست خودم استفاده کنم
ایمیل ساختم(از هاست خودم) و توی بخش ایمیل فرستنده قرار دادم
و تاجایی ک اطلاع دارم سی پنل از smtp پشتیبانی میکنه
ولی نمیدونم چرا ایمیل حالا ارسال نمیشه

MailMessage mail = new MailMessage();

//set the address
mail.From = new MailAddress("email");
mail.To.Add("email");
//set the content
mail.Subject = TextBox4.Text;
mail.Body = TextBox3.Text + "user email : " + TextBox2.Text;

//send the message
SmtpClient smtp = new SmtpClient();
smtp.UseDefaultCredentials = false;
smtp.Credentials = new System??.Net??.NetworkCredential("email", "pass");
smtp.Host = "smtp.Domain";
smtp.Port = 25;
smtp.EnableSsl = true;

mRizvandi
شنبه 11 آبان 1392, 12:17 عصر
به نظرم دو خط از کدت رو باید عوض کنی:
smtp.Host = "smtp.Domain";
البته می تونی از هاست هم بپرسی


smtp.Host = "mail.Domain";


بعد این رو هم بردار
smtp.EnableSsl = true;

هزاره سوم
شنبه 11 آبان 1392, 12:59 عصر
من هاستم رو از سی پنل گرفتم
میخواستم بدونم ممکنه به خاطر این باشه؟ممکنه سی پنل از asp پشتیبانی نکنه؟

mRizvandi
دوشنبه 13 آبان 1392, 00:38 صبح
من هاستم رو از سی پنل گرفتم
میخواستم بدونم ممکنه به خاطر این باشه؟ممکنه سی پنل از asp پشتیبانی نکنه؟

اگر کد ارسال ایمیل رو از روی سیستم خودتون اجرا می کنید که باید حتما کار کنه (به شرطی که فایروال یا چیزی جلوی ارسال ایمیل رو نگرفته باشه) اگر سایت رو پابلیش کردید و صفحات رو می بینید پس می تونید ایمیل هم ارسال کنید. اما تا اونجایی که من میدونم (شاید اشتباه کنم) CPanel برای سرورهای لینوکس هست و معمولا ASP.NET رو پشتیبانی نمی کنند.