PDA

View Full Version : سوال: ارسال فرم اطلاعاتی به ایمیل خاص



tetra2008
شنبه 20 آذر 1389, 19:35 عصر
سلام دوستان میدونم با خوندن این میگید تو سایت هست و مدیرا زود پاک میکنم ولی لطفا جواب بدین بعد پاک کنید من گشتم ولی همش php بود تازه اونیم که میخواستم نبود من تو سایتم یه فرم عضو گیری دارم وبرای صحت اون میخوام بعد از پر کردن اون صفحه ای به ایمیل اون شخص فرستاده بشه که اگه ایمیل از اون طرف باشه بره و عضویت رو کامل کنه ممنون میشم کمک کنید :متفکر:

Mostafa_Dindar
شنبه 20 آذر 1389, 23:41 عصر
سوالتون خیلی رایج هست و شما باید کمی بیشتر تلاش کنید .

اول از همه فضای نام System.Net.Mail; رو بالای صفحه وارد کنید . فرض میکنیم که میخواهید از Provider جیمیل استفاده کنید :


NetworkCredential loginInfo = new NetworkCredential("YourEmail@gmail.com", "کلمه عبور ایمیل شما ");
MailMessage msg = new MailMessage();
msg.From = new MailAddress("YourEmail@gmail.com");
msg.To.Add(new MailAddress("ایمیل مقصد"));
msg.Subject = "عنوان ایمیل ";
msg.Body ="متن ایمیل شما که میتونه متن اچ تی ام ال هم باشه ";
msg.IsBodyHtml = true;

SmtpClient client = new SmtpClient("smtp.gmail.com", 587);
client.EnableSsl = true;
client.UseDefaultCredentials = false;
client.Credentials = loginInfo;
client.Send(msg);

tetra2008
یک شنبه 21 آذر 1389, 19:09 عصر
سوالتون خیلی رایج هست و شما باید کمی بیشتر تلاش کنید .

اول از همه فضای نام System.Net.Mail; رو بالای صفحه وارد کنید . فرض میکنیم که میخواهید از Provider جیمیل استفاده کنید :


NetworkCredential loginInfo = new NetworkCredential("YourEmail@gmail.com", "کلمه عبور ایمیل شما ");
MailMessage msg = new MailMessage();
msg.From = new MailAddress("YourEmail@gmail.com");
msg.To.Add(new MailAddress("ایمیل مقصد"));
msg.Subject = "عنوان ایمیل ";
msg.Body ="متن ایمیل شما که میتونه متن اچ تی ام ال هم باشه ";
msg.IsBodyHtml = true;

SmtpClient client = new SmtpClient("smtp.gmail.com", 587);
client.EnableSsl = true;
client.UseDefaultCredentials = false;
client.Credentials = loginInfo;
client.Send(msg);

سلام خوب این درست ولی یکم راهنمایی هم لازم دارم اگه در سایتهای رایج که هست عضو شده باشین بعد از پر کردن فرم عضویت url مرحله اخر که مرحله اخر هست به ایمیل شما ارسال میشود و با رفتن به ایمیل خود و زدن رو اون کامل میشه این هم مثل اون عمل میکنه ؟

بعدشم من این کدو گذاشتم تو یه دکمه و صفحه c# اون کدی که شما گذاشتی رو گذاشتم و تغیراتم انجام دادم ولی عمل نکرد و کد ایچ تی ام ال هم قبول نکرد :ناراحت:

Mostafa_Dindar
یک شنبه 21 آذر 1389, 20:05 عصر
اگه در سایتهای رایج که هست عضو شده باشین بعد از پر کردن فرم عضویت url مرحله اخر که مرحله اخر هست به ایمیل شما ارسال میشود و با رفتن به ایمیل خود و زدن رو اون کامل میشه این هم مثل اون عمل میکنه ؟


پروسه ایمیل زدن همه جا تقریبا یکسانه , ولی اینکه Activation حساب کاربری را چطور پیاده سازی کنید مبحث دیگری هست .



بعدشم من این کدو گذاشتم تو یه دکمه و صفحه c# اون کدی که شما گذاشتی رو گذاشتم و تغیراتم انجام دادم ولی عمل نکرد و کد ایچ تی ام ال هم قبول نکرد :ناراحت:


بهتره ابتدا به صورت لوکال کار کنید (http://vahidnasiri.blogspot.com/2008/11/aspnet.html), سپس اینجا را مطالعه بفرمائید (http://weblogs.asp.net/scottgu/archive/2005/12/10/432854.aspx) . از این ساده تر فکر نمیکنم جایی پیدا کنید

tetra2008
یک شنبه 21 آذر 1389, 20:39 عصر
پروسه ایمیل زدن همه جا تقریبا یکسانه , ولی اینکه Activation حساب کاربری را چطور پیاده سازی کنید مبحث دیگری هست .



بهتره ابتدا به صورت لوکال کار کنید (http://vahidnasiri.blogspot.com/2008/11/aspnet.html), سپس اینجا را مطالعه بفرمائید (http://weblogs.asp.net/scottgu/archive/2005/12/10/432854.aspx) . از این ساده تر فکر نمیکنم جایی پیدا کنید


سلام ممنون آقای دین دار البته ممکنه نشناسین ولی من از شاگردای آقای ضیایی هستم در حال حاضر من اینارو میدونم نمیدونم با فرم های عضویت سرو کار داشتین یا نه ؟ بخشی از عضویت با فرستادن مرحله بعد به ایمیل کاربر انجام میشه که این کار صحت درست بودن ایمیل رو نشون میده حالا من چه جور میتونم این کارو کنم ؟

Mostafa_Dindar
یک شنبه 21 آذر 1389, 21:34 عصر
سلام ممنون آقای دین دار البته ممکنه نشناسین ولی من از شاگردای آقای ضیایی هستم در حال حاضر من اینارو میدونم نمیدونم با فرم های عضویت سرو کار داشتین یا نه ؟ بخشی از عضویت با فرستادن مرحله بعد به ایمیل کاربر انجام میشه که این کار صحت درست بودن ایمیل رو نشون میده حالا من چه جور میتونم این کارو کنم ؟

سلام , دوست خوبم آقای ضیائی شاگردهای زیاد داشتن , ولی فکر نمیکنم ایشون هم فردی بنام تترا بشناسن :چشمک: .

متوجهم , این کار بسیار سادست . " چگونگی فعال سازی حساب کاربری از طریق ایمیل " انتخاب بسیار بهتری برای این تاپیک هست .

برای این مورد شما نیاز هست با ASP.NET Membership Provider آشنا باشید , در این صورت هنگام ایجاد کاربر جدید ( استفاده از کنترل CreateUserVizard) در رویداد CreatedUser از این کنترل اطلاعات فرم رو به شکل زیر بدست بیارید :



TextBox username = (TextBox)CreateUserWizard1.CreateUserStep.ContentT emplateContainer.FindControl("UserName");
TextBox password = (TextBox)CreateUserWizard1.CreateUserStep.ContentT emplateContainer.FindControl("Password");
TextBox email = (TextBox)CreateUserWizard1.CreateUserStep.ContentT emplateContainer.FindControl("Email");

CreateUserWizard cuw = (CreateUserWizard)sender;
MembershipUser user = Membership.GetUser(cuw.UserName);
Guid userID = (Guid)user.ProviderUserKey;و یک ایمیل به کاربر میزنید , در اون ایمیل یک لینک به صورت زیر ایجاد میکنید :


<a href=http://YourSite.com/Membership/Activation.aspx?ID=" + userID.ToString() + ">بر روی این لینک کلیک کنید تا حساب کاربری شما فعال شود </a>که userID یک ProviderUserKey از نوع guid هست .

همچنین همانطور که باید حدس زده باشید باید یک فرم بنام Activation.aspx بسازید که در رویداد لود صفحه QueryString آی دی را بگیرد و پراپرتی IsApproved از User رو مقدار True دهد .


string userID = Request.QueryString["ID"];
Guid gd = new Guid(userID);
MembershipUser user = Membership.GetUser(gd);
if (!user.IsApproved)
{
user.IsApproved = true;

Membership.UpdateUser(user);
}