PDA

نسخه کامل مشاهده نسخه کامل : آموزش گام به گام ساخت یک Web Mail



mamadfelfel1988
08-08-2007, 07:16
سلام به تمام دوستان عزیز می خوام تو این تایپیک آموزش ساخت یک Web Mail رو با زبان php ارائه بدم بعضی جا ها خیلی به کار میاد البته امیدوارم به کار شما هم بیاد
این آموزش شامل ارسال email البته نه با تابع mail بلکه آموزش کامل ساخت یک SMTP
دریافت و بازبینی ایمیل
انشالا بزودی شروع خواهم کرد.:20::11:

mamadfelfel1988
08-08-2007, 07:21
این اولین شروع فعالیت من هست امیدوارم به کارتون بیاد.:20:
البته این شکل کلی هست و در ادامه میخوام آموزش ساخت کلاس MY_MAIL رو آموزش بدهم .

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

mamadfelfel1988
08-08-2007, 07:40
کلاس my_mail بدون شک در عمل خود ساده است اما چهار چوبی را فراهم می نماید که بر اساس آن میتوانیم کلاس های پیچیده دیگری بسازیم.

(خصوصیات) Properties

نخست به تعدادی متغیر عضو در کلاس نیاز دایم که مقادیر فیلد هدر و محتویات بدنه رو در خود نگه خواهد داشت :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
خصوصیات $validate_email به صورت پیش فرض true هست وکلاس آدرس های ایمیل را برای اعتبار سنجی با استفاده از regular expression تست میکند.اگر خصوصیات $rigorous_email_check را بروی true تنظیم کنید رکردهای dns بررسی خواهد شد تا ببیند ایا نام domain بکار رفته در هر ادرس معتبر است یا خیر :
var $validate_email = true;
var $rigorous_email_check = false;
دو خصوصیت زیر را روی true تنظیم کنید تا در صورت تمایل شما موضوعات وبدنه خالی email مجاز باشد :
var $allow_empty_subject = false;
var $allow_empty_body = false;

ارایه header هر فیلد هدر email را که به عنوان عنصر ارایه مشخص شده است را در خود نگه میدارد .شکافتن آرایه بوسیله یک جفت CR/LّF بلاک هدر فرمت شده را به شما خواهد داد.
var $headers = array();
ما پیام های کاربر و خطا را به عنوان خصوصیات رشته ای معرفی می کنیم تا انها را از کد واقعی تمایز دهیم.به این طریق میتوانیم پیام ها را تعقیر دهیم مگر اینکه با snoop نمودن که با هر تعقیر در پیان احتیاج پیدا شود.


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدواسه ایم پست بسته لطفا برای روحیه ادامه کار من نظر بدید :31::31::11:

my friend
08-08-2007, 11:48
دستت درد نکنه ، اما...
کدها رو بهتره تو تگهای php و code بزاری تا کپی کردنشون آسون باشه.


واسه ایم پست بسته لطفا برای روحیه ادامه کار من نظر بدید
من حدود یه هفته پیش یه آموزش نوشتم که مرحله به مرحله بود ، میخواستم یه فرم کامل بسازیم تا بتونه تمامی نیاز ها رو برطرف کنه ، اما هیچکس استقبال نکرد... من هم ادامه ندادم... امیدوارم حداقل این آموزش رو بتونی کامل کنی.

hosseintdk775
08-08-2007, 14:55
دستت درد نکنه ، اما...
کدها رو بهتره تو تگهای php و code بزاری تا کپی کردنشون آسون باشه.


من حدود یه هفته پیش یه آموزش نوشتم که مرحله به مرحله بود ، میخواستم یه فرم کامل بسازیم تا بتونه تمامی نیاز ها رو برطرف کنه ، اما هیچکس استقبال نکرد... من هم ادامه ندادم... امیدوارم حداقل این آموزش رو بتونی کامل کنی.
بسم الله الرحمن الرحيم
با سلام
دوست عزيز اينكه كسي استقبال نكرد معني اش اين نيست كه به درد كسي نمي خورد ، ممكن است كساني بوده اند كه مطالب را دنبال مي كردند و حتما هم كه نبايد پستي ارسال بكنند / و شايد هم كساني باشد كه فعلا در اين انجمن عضو نيست و در آينده عضو شود و به درد آن شخص بخورد.

mamadfelfel1988
08-08-2007, 15:03
بسم الله الرحمن الرحيم
با سلام
دوست عزيز اينكه كسي استقبال نكرد معني اش اين نيست كه به درد كسي نمي خورد ، ممكن است كساني بوده اند كه مطالب را دنبال مي كردند و حتما هم كه نبايد پستي ارسال بكنند / و شايد هم كساني باشد كه فعلا در اين انجمن عضو نيست و در آينده عضو شود و به درد آن شخص بخورد.


دستت درد نکنه ، اما...
کدها رو بهتره تو تگهای php و code بزاری تا کپی کردنشون آسون باشه.


من حدود یه هفته پیش یه آموزش نوشتم که مرحله به مرحله بود ، میخواستم یه فرم کامل بسازیم تا بتونه تمامی نیاز ها رو برطرف کنه ، اما هیچکس استقبال نکرد... من هم ادامه ندادم... امیدوارم حداقل این آموزش رو بتونی کامل کنی.

خدمت my friend عزیز بگم که آموزش که درست کرده بودی عالی بود و نخواستم تایپیک بدم که مشکل ایجاد بشه و گر نه من این تایپیکت رو به چند تا از دوستام که احتیاج مبرم به این داشتن دادم و ادامه بده.:20:

mamadfelfel1988
08-08-2007, 15:21
Checkfields
متد Checkfields اطمینان میدهد که کاربر تمامی مقادیر هدر ضروری را Submit نموده است . همچنین آدرس های E-Mail را با اطمینان از یک عبارت با قاعده تعین اعتبار مینماید.اگر خصوصیات var $rigorous_email_check = false;
فعال شده باشد پس رکوردهایDNS بررسی شده اند :



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

mamadfelfel1988
08-08-2007, 15:29
چنانکه پیشتر ذکر شد کاربران به گذاشتن سمی کالون بجای کاما برای جدا کردن ادرس های ایمیل متعدد عادت پیدا کرده اند . ما ملزم به جای گزینی هر سمی کالون با یک کاما هستیم :



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید



اگر هدره اضافی موجود باشند همگی انان را درونه آرایه ی Mail_headers به عنوان عناصر آرایه قرار میدهیم :



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید




اگر از شما درخواست شد که ادرس های ایمیل را تعیین اعتبار نمایید . validate_email به صورت پیش فرض فعال است :



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
خب امیدوارم مستر ثمر واقع شده باشه :40: .

my friend
08-08-2007, 17:08
بسم الله الرحمن الرحيم
با سلام
دوست عزيز اينكه كسي استقبال نكرد معني اش اين نيست كه به درد كسي نمي خورد ، ممكن است كساني بوده اند كه مطالب را دنبال مي كردند و حتما هم كه نبايد پستي ارسال بكنند / و شايد هم كساني باشد كه فعلا در اين انجمن عضو نيست و در آينده عضو شود و به درد آن شخص بخورد.

خدمت my friend عزیز بگم که آموزش که درست کرده بودی عالی بود و نخواستم تایپیک بدم که مشکل ایجاد بشه و گر نه من این تایپیکت رو به چند تا از دوستام که احتیاج مبرم به این داشتن دادم و ادامه بده.:20:
درسته ، شما راست میگید...
اما خودتون که میدونید ، کسی استقبال نکنه آدم دلسرد میشه.... حتی اگه یه نفر آموزش ها رو دنبال کنه آدم دلگرم میشه تا ادامه بده...
باشه سر فرصت حتما ادامه میدم...

mamadfelfel1988
08-08-2007, 23:49
تعیین اعتبار email وارد شده :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

mamadfelfel1988
08-08-2007, 23:56
این متد تابع Checkdnsrr رت روی هر Domain حاوی آرایه آدرس ایمیل معین شده فرا میخواند تا ببیند که آیا واقعا و جود دارد یا خیر .


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


BuildsHeaders
این متد است که هدر های اضافی را سر هم میگذارد:


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


ما رو از نظرات خود بی نسیب نگزارید.:5:
راستی اگر کسی موضوع خوبی یا رنامه خوبی سراغ داره که بدرد آموزش می خوره بگه تا تهیه کنم. فعلا یا علی.:20:

zaminshenas
09-08-2007, 00:22
دستت درد نکنه

mamadfelfel1988
09-08-2007, 00:54
متد Viewmsg
این دو بلاک هر دو هدر و بدنه ی پیام Email ساخته شده توسط کلاس را بر میگرداند . هدف آن اشکال زدایی است.


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

متد viewmsg قرار است پس از انکه ایمیل را فرستادید فراخانی گردد. این متد خصوصیات header را تعیین وضعیت ابتدایی می کند و بلاک هدر را مجددا می سازد :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

mamadfelfel1988
09-08-2007, 01:02
دستت درد نکنه
چاکرتیم:10:

خوب دوستان به مر حله آخر رسیدیم امیدوارم بدردتون بخوره این کدها دوستایی که php زیاد کار کرده باشن میدونن اینها بسیار کار آمد هست حداقل برای من اینگونه بوده

Send
متد send متد checkfields را فراخوانی میکند تا هدرها و ادرس های email بکاررفته را تعیین اعتبار نماید و سپس buildheaders به ساخت هدر های اضافی مبادرت میکند .سر انجام تابع mail را برای انتقال پیام به MTA محلی فرا میخواند .



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


Error Msg
این یک عادت خوب است که بیشتر برنامه نویس های حرفه ای این کار رو انجام میدهند استفاده از یک متد برای گزارش خطا تا اینکه Echo Out بکنیم.


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

mamadfelfel1988
09-08-2007, 01:09
خوب دیگه تموم شد و من با وجود تمام کارهام خواستم این کار را زود تر تمام بکنم که کسی حوصله اش سر نره :31:

همونجوری که گفتن به طور کلی این class به طور کلی خیلی خفن نیست ولی تو کارهای خفن هم کمک وقتی میکنه و هم فکری خب ما می تونیم کلاس که نوشتیم رو ازش استفاده زیادی بکنیم یعنی در روش های مختلف یک روش اینکه با فرم html یک روش دیگر هم پایین مینویسم اگر کسی html هم خواست میتونم براش تهیه کنم فعلا یا علی.:20::20:


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید



اگر نظر بدبد و بخواهید این روش رو کل SMTP رو هم میزارم .:13::11::40:

hosseintdk775
09-08-2007, 11:46
راستی اگر کسی موضوع خوبی یا رنامه خوبی سراغ داره که بدرد آموزش می خوره بگه تا تهیه کنم. فعلا یا علی.:20:


بسم الله الرحمن الرحيم
با سلام
من يك كد "تماس با ما" دارم ولي اگر گزينه ها را كاربر پر نكند و روي ارسال كليك بكند نامه ارسال مي شود.
من از كسي پرسيدم كه چگونه اين مشكل را برطرف بكنم يك آدرس اي دادند ولي چون آدرس فارسي نمي باشد نتوانستم به چيزي كه مي خواهم برسم .
اگر امكانش هست توضيحي درباره همين لينك بدهيد.

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

bahdar
09-08-2007, 13:07
سلام.
محمد جان ادامه بده خیلی خوبه.

mamadfelfel1988
09-08-2007, 15:16
بسم الله الرحمن الرحيم
با سلام
من يك كد "تماس با ما" دارم ولي اگر گزينه ها را كاربر پر نكند و روي ارسال كليك بكند نامه ارسال مي شود.
من از كسي پرسيدم كه چگونه اين مشكل را برطرف بكنم يك آدرس اي دادند ولي چون آدرس فارسي نمي باشد نتوانستم به چيزي كه مي خواهم برسم .
اگر امكانش هست توضيحي درباره همين لينك بدهيد.

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
باشه چشم من حتما سر میزنم و برات کد ها رو میزارم.

سلام.
محمد جان ادامه بده خیلی خوبه.
خوشحالم مورد توجح قرار گرفت.

mamadfelfel1988
09-08-2007, 15:31
ارسال ایمیل بدونه تابع Mail و بوسیله ی SMTP که خودتان نوشته اید یک خورده پیچیده است ولی ارزش داره اگر کسانی تمایل دارند حتما اعلام کنند تا من آموزشرو بزارم هر چند خیلی وقت گیره ولی بیخیال منتظر نظرات شما . یا علی :20::31: