برگزیده های پرشین تولز

ساخت یک فرم تماس

niterider

Registered User
تاریخ عضویت
27 دسامبر 2002
نوشته‌ها
414
لایک‌ها
3
محل سکونت
The Most Beautifull Love , Tehran
سلام.
من می خوام یک فرم درست کنم که فرم صفحه تماس باشه با این فیلدها:
1 - نام : که وقتی گیرنده ایمیل رو میگیره sender همین نام فرستنده باشه
2 - موضوع : که وقتی گیرنده ایمیل رو میگیره Subject همین موضوع فرستنده باشه
3 - ایمیل : که گیرنده ایمیل فرستنده رو ببینه
4 - متن : که متن ایمیل باشه

با زدن دکمه ارسال این ایمیل به آدرس ایمیلی که ما مشخص می کنیم ارسال بشه. خب چیکار کنیم؟
 

niterider

Registered User
تاریخ عضویت
27 دسامبر 2002
نوشته‌ها
414
لایک‌ها
3
محل سکونت
The Most Beautifull Love , Tehran
خب خودم این فرم رو ساختم و حالا ایشالا آموزشش رو می زارم اینجا تا بچه ها ایراداش رو بگیرن.
الان من یک TextBox دارم که می خوام اگه کاربر اینو خالی گذاشت ازش خطا بگیرم. می دونم این کارو میشه با JavaScript کرد ولی می خوام خالی بگذاشته شدن TextBox رو چک کنم. چه میشه کرد؟ این فکر خودم رسیده

کد:
if( TextBox1.Text.Trim() == null)

که وارد حلقه شرط بشه اگه خالی بود ولی جواب نداد. کجای کد ایراد داره؟
 

niterider

Registered User
تاریخ عضویت
27 دسامبر 2002
نوشته‌ها
414
لایک‌ها
3
محل سکونت
The Most Beautifull Love , Tehran
خب من این فرم تماس رو با کمک اطلاعاتی که دوستان دادن طراحی کردم که امیدوارم دوستان اگه ایرادی داره بگن و کمک کنن که تکمیل بشه.
تو خود صفحه تماس می تونیم از یک سری TextBox استفاده کنیم تا اطلاعاتی مثل نام ، ایمیل ، نام شرکت ، موضوع و متن رو دریافت کنیم. بعد از یک Buttom استفاده می کنیم که فرد با کلیک اون بتونه پیام رو ارسال کنه. من برای جلوگیری از دریافت ایمیل های اسپم اومدم یه سوال پرسیدم که فرستنده باید جواب بده. سوال اینکه 2+2 چند میشه و فرد باید تو این TextBox عدد 4 رو وارد کنه. برای جلوگیری از گیج شدنش یه سری گزینم گذاشتم انتخاب کنه. بوسیله یک DropDownList.
کد زیر باید در سرامد فایل code پشت سر صفحه قرار بگیره.
کد:
using System.Net.Mail;
در بخش مربوط به رویداد دکمه ارسال هم این کد رو می نویسیم. البته کدها رو مطابق با صفحه تون باید اصلاح کنید که فکر کنم مشخص باشه.
کد:
    protected void SendMail_Click(object sender, EventArgs e)
    {

            if (int.Parse(DropDownList1.SelectedValue) != 4)
            {
                Label6.Text = "لطفا پاسخ صحیح را برای سوال امنیتی انتخاب کنید.";
            }
            
            else
            {
                //create the mail message
                MailMessage mail = new MailMessage();

                //set the addresses
                mail.From = new MailAddress(TextBox2.Text);
                mail.To.Add("[email protected]");

                //set the content
                mail.Subject = TextBox5.Text;
                mail.Body = "نام فرستنده : " + TextBox1.Text + "<br /> نام شرکت :" + TextBox3.Text + "<br /> متن نامه :" + TextBox6.Text;
                mail.IsBodyHtml = true;

                //send the message
                SmtpClient smtp = new SmtpClient("your mail server for example mail.persiantools.com");
                smtp.Send(mail);
                Label6.Text = "ایمیل شما با موفقیت ارسال شد.";
            }
        
    }
اگه سوالی بود در خدمتم.
 

najandz

کاربر تازه وارد
تاریخ عضویت
15 آگوست 2007
نوشته‌ها
12
لایک‌ها
1
خب من این فرم تماس رو با کمک اطلاعاتی که دوستان دادن طراحی کردم که امیدوارم دوستان اگه ایرادی داره بگن و کمک کنن که تکمیل بشه.
تو خود صفحه تماس می تونیم از یک سری TextBox استفاده کنیم تا اطلاعاتی مثل نام ، ایمیل ، نام شرکت ، موضوع و متن رو دریافت کنیم. بعد از یک Buttom استفاده می کنیم که فرد با کلیک اون بتونه پیام رو ارسال کنه. من برای جلوگیری از دریافت ایمیل های اسپم اومدم یه سوال پرسیدم که فرستنده باید جواب بده. سوال اینکه 2+2 چند میشه و فرد باید تو این TextBox عدد 4 رو وارد کنه. برای جلوگیری از گیج شدنش یه سری گزینم گذاشتم انتخاب کنه. بوسیله یک DropDownList.
کد زیر باید در سرامد فایل code پشت سر صفحه قرار بگیره.
کد:
using System.Net.Mail;
در بخش مربوط به رویداد دکمه ارسال هم این کد رو می نویسیم. البته کدها رو مطابق با صفحه تون باید اصلاح کنید که فکر کنم مشخص باشه.
کد:
    protected void SendMail_Click(object sender, EventArgs e)
    {

            if (int.Parse(DropDownList1.SelectedValue) != 4)
            {
                Label6.Text = "لطفا پاسخ صحیح را برای سوال امنیتی انتخاب کنید.";
            }
            
            else
            {
                //create the mail message
                MailMessage mail = new MailMessage();

                //set the addresses
                mail.From = new MailAddress(TextBox2.Text);
                mail.To.Add("[email protected]");

                //set the content
                mail.Subject = TextBox5.Text;
                mail.Body = "نام فرستنده : " + TextBox1.Text + "<br /> نام شرکت :" + TextBox3.Text + "<br /> متن نامه :" + TextBox6.Text;
                mail.IsBodyHtml = true;

                //send the message
                SmtpClient smtp = new SmtpClient("your mail server for example mail.persiantools.com");
                smtp.Send(mail);
                Label6.Text = "ایمیل شما با موفقیت ارسال شد.";
            }
        
    }
اگه سوالی بود در خدمتم.

دوست عزیز

لطفا زحمت میکشی که فایل زیپ شده به همراه html + asp.net قرار بدهی‌ .کلی‌ ممنون میشم اگر همچنین لطفی‌ بکنی‌
 

niterider

Registered User
تاریخ عضویت
27 دسامبر 2002
نوشته‌ها
414
لایک‌ها
3
محل سکونت
The Most Beautifull Love , Tehran
کد زیر نمونه ای از کد صفحه contact.aspx هستش.

کد:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ContactForm.aspx.cs" Inherits="About_ContactForm" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <h1>تماس با ما</h1>
    <p>لطفا برای تماس با بخش اطلاعات شرکت فرم زیر را به دقت پر کنید.</p>
    <p style="background-color:#8fab22; color:White; padding:3px 10px; width:380px; margin-left:auto; margin-right:auto;">
        <asp:Label ID="Label6" runat="server" Text="در صورت ارسال موفقیت آمیز پیام ، پیغام تائید ارسال نمایان خواهد شد."></asp:Label><br />
    </p>
    <div style="text-align:right; width:400px; margin-left:auto; margin-right:auto;">
        <table>
        <tr>
            <th>فرم تماس</th>
        </tr>
        <tr>
            <td>نام</td>
            <td><asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
        <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="لطفا نام خود را وارد کنید." ControlToValidate="TextBox1" Font-Size="10px"></asp:RequiredFieldValidator>
                </td>
        </tr>
        <tr>
            <td>ایمیل</td>
            <td><asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><br />
                <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" 
                    ErrorMessage="لطفا ایمیل خود را وارد کنید." ControlToValidate="TextBox2" 
                    Font-Size="10px"></asp:RequiredFieldValidator>
            <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" 
                    ControlToValidate="TextBox2" ErrorMessage="آدرس ایمیل صحیح نیست." 
                    Font-Size="10px" 
                    ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator>
                </td>
        </tr>
        <tr>
            <td>شرکت</td>
            <td><asp:TextBox ID="TextBox3" runat="server"></asp:TextBox><br /><br /></td>
        </tr>
        <tr>
            <td>موضوع</td>
            <td><asp:TextBox ID="TextBox5" runat="server"></asp:TextBox><br />
                <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" 
                    ErrorMessage="موضوع پیام خود را وارد کنید." Font-Size="10px" ControlToValidate="TextBox5"></asp:RequiredFieldValidator>
            </td>
        </tr>
        <tr>
            <td>متن</td>
            <td><asp:TextBox ID="TextBox6" runat="server" Columns="25" Rows="6" TextMode="MultiLine"></asp:TextBox><br />
                <asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" 
                    ErrorMessage="لطفا متن خود را وارد کنید." Font-Size="10px" ControlToValidate="TextBox6"></asp:RequiredFieldValidator>
                <br />
            </td>
        </tr>
        <tr>
            <td>سوال امنیتی<br />?= 2+2</td>
            <td>
                <asp:DropDownList ID="DropDownList1" runat="server">
                    <asp:ListItem>1</asp:ListItem>
                    <asp:ListItem>2</asp:ListItem>
                    <asp:ListItem>3</asp:ListItem>
                    <asp:ListItem>4</asp:ListItem>
                </asp:DropDownList>
                <br />
                <asp:CompareValidator ID="CompareValidator1" runat="server" 
                    ErrorMessage="پاسخ سوال امنیتی اشتباه می باشد." Font-Size="10px" 
                    ValueToCompare="4" ControlToValidate="DropDownList1"></asp:CompareValidator>
            </td>
        </tr>
        <tr>
            <td></td>
            <td>
                <asp:Button ID="SendMail" runat="server" Text="ارسال" onclick="SendMail_Click" 
                    Font-Names="Tahoma" />
            </td>
        </tr>
    </table>
    </div>
    </div>
    </form>
</body>
</html>

این کد هم می تونید تو صفحه code-behind همین صفحه قرار بدین.

کد:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Net.Mail;

public partial class About_ContactForm : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void SendMail_Click(object sender, EventArgs e)
    {

        if (int.Parse(DropDownList1.SelectedValue) != 4)
        {
            Label6.Text = "لطفا پاسخ صحیح را برای سوال امنیتی انتخاب کنید.";
        }

        else
        {
            //create the mail message
            MailMessage mail = new MailMessage();

            //set the addresses
            mail.From = new MailAddress(TextBox2.Text);
            mail.To.Add("[email protected]");

            //set the content
            mail.Subject = TextBox5.Text;
            mail.Body = "نام فرستنده : " + TextBox1.Text + "<br /> نام شرکت :" + TextBox3.Text + "<br /> متن نامه :" + TextBox6.Text;
            mail.IsBodyHtml = true;

            //send the message
            SmtpClient smtp = new SmtpClient("mail.gtl1000.com");
            smtp.Send(mail);
            Label6.Text = "ایمیل شما با موفقیت ارسال شد.";
        }

    }
}
 
بالا