امروزه تمام شرکت های توسعه دهنده ی فناوری سعی می کنند که تمام نیاز های مشتری را با کالای خود براورده کنند یکی از اهداف طراحان وبسات هم همین بوده است برای این منظور دریافت و ارسال ایمیل با وبسایت می تواند بسیار به کاربران کمک کند که نیازی به رفتن به صفحات دیگری غیر از سایت خودشان نداشته باشند.
ارسال و دریافت ایمیل از صندوق Gmail
ایمیل ها امروزه برای همه بسیار ضروری هستند مردم میخواهند ایمل ها ی خود را بطور منظم چک کنند تا با رخداد مختلف به روز باشند حالا این آموزش برای کسانی که میخواهند همه چیز را یکجا داشته باشند. کار را بسیار راحتتر کرده است. اگر شما صاحب وبسایت باشید با کمک این آموزش می توانید ایمیل ها ی خود را درون وبسایت خود ببینید.
برای اینکه بتوانیم ایمل ها ی خود را در وبسایت خود ببینیم دو گام زیر را باید انجام دهیم
1. ساخت یک فایل HTML که ما با کد های زیر ایجاد و به نام emails.html ذخیره کرده ایم .
<html>
<body>
<div id="wrapper">
<div class="form_div">
<form method="post" action="get_emails.php">
<input type="text" name="username" placeholder="Enter Username">
<input type="password" name="password" placeholder="*********">
<input type="submit" name="get_emails" value="GET EMAILS">
</form>
</div>
</div>
</body>
</html>
در این گام ما یک فرم برای وارد کردن نام کاربری و رمز عبور برای دریافت ایمیل هایتان است .
گام 2. ایجاد یک فایل PHP که با کد های زیر ایجاد و به نام get_emails.php ذخیره کرده ایم
<?php
if(isset($_POST['get_emails']))
{
$username=$_POST['username'];
$password=$_POST['password'];
//Connect Gmail feed atom
$url = "https://mail.google.com/mail/feed/atom";
// Send Request to read email
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($curl, CURLOPT_ENCODING, "");
$curlData = curl_exec($curl);
curl_close($curl);
$emails = new SimpleXmlElement($curlData);
echo "<ul>";
foreach($emails->entry as $entry)
{
echo '<li><p>'. $entry->title.'<br>';
echo $entry->summary;
echo '</p></li>';
}
echo "</ul>";
}
در این گام ما نام کاربری و رمز عبور را که توسط کاربر وارد شده است را می گیریم و از گوگل ایمیل فید برای گرفتن ایمیل ها استفاده می کنیم و بعد از آن ما از curl برای دریافت ایمیل به صورت Xml استفاده می کنیم حالا باید ایمیل ها را به حالت قابل خواندن در بیاوریم ما از تابع SimpleXmlElement() استفاده کرده ایم.
برای ارسال ایمیل به صندوق Gmail
ارسال ایمیل به کمک SMTP و PHP
در این آموزش ما به شما نشان می دهیم که چگونه از SMTP (پروتکل ارسال ایمیل) و PHP برای ارسال ایمیل استفاده کنید. شما باید کتابخانه PHP Mailer library را دانلود کنید. ( https://github.com/PHPMailer/PHPMailer) فراموش نکنید این پروتکل حتی برای ارسال از سرور محلی نیز باید اضافه شود.
برای ارسال ایمیل به کمک SMTP و PHP Mailer تنها به یک فایل PHP نیاز دارید که ما ان را ایجاد و با نام mail.php ذخیره کرده ایم.
<?php
require_once('phpmail/PHPMailerAutoload.php');
$mail = new PHPMailer();
$mail->CharSet = "utf-8";
$mail->IsSMTP();
// enable SMTP authentication
$mail->SMTPAuth = true;
// GMAIL username
$mail->Username = "your_email_id@gmail.com";
// GMAIL password
$mail->Password = "your_gmail_password";
$mail->SMTPSecure = "ssl";
// sets GMAIL as the SMTP server
$mail->Host = "smtp.gmail.com";
// set the SMTP port for the GMAIL server
$mail->Port = "465";
$mail->From='your_gmail_id@gmail.com';
$mail->FromName='your_name';
$mail->AddAddress('reciever_email_id', 'reciever_name');
$mail->Subject = 'SMTP Mail Testing';
$mail->IsHTML(true);
$mail->Body = 'Hi there , This is just a testing mail';
if($mail->Send())
{
echo "Message was Successfully Send :)";
}
else
{
echo "Mail Error - >".$mail->ErrorInfo;
}
?>
در این گام ما ابتدا کتابخانه phpmailer را دانلود کرده ایم و تمام فایل ها را در پوشه phpmail قرار داده ایم و سپس PHPMailerAutoload.php اصلی را درج کرده ایم. به این ترتیب حتی از کامپیوتر محلی هم با اتصال به اینترنت می توان به جی میل خود ایمیل بفرستید.
کار ما اینجا به پایان می رسد باز هم اگر دوست دارید می توانید کد های دلخواه خود را اضافه کنید.
مثلا بگذارید یکی از کد های که واقعا کاربرد دارد را مثال بزنیم در مرحله اول این تمرین ما نام کاربری و رمز عبور را از کاربر گرفتیم و سعی کردیم به ایمیل وصل شویم ولی در واقع درست تر آن است که یک مرحله چک کردن نام کلمه عبور هم داشته باشیم .
تائید اعتبار ایمیل و رمز عبور با کمک jQuery
تائید اعتبار همیشه برای امنیت وبگاه و اطلاعات کاربر مهم است همواره قبل از اتصال باید ایمیل را برای مجاز بودن چک کرد و کلمه عبور را برای صحت و استحکام لازم کنترل کرد راه های زیادی برای این کار وجود دارد ما از jQuery استفاده می کنیم.
برای تعیین اعتبار ایمیل و رمز عبور دوگام زیر را طی خواهیم کرد:
گام 1. ایجاد یک فایل HTML که ما با کد های زیر و به نام validate.html ایجاد و ذخیره کرده ایم.
<html>
<head>
<link href="validate_style.css" type="text/css" rel="stylesheet"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
function validate()
{
var email=$("#email").val();
var pass=$("#password").val();
var email_regex=/^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/;
var password_regex1=/([a-z].*[A-Z])|([A-Z].*[a-z])([0-9])+([!,%,&,@,#,$,^,*,?,_,~])/;
var password_regex2=/([0-9])/;
var password_regex3=/([!,%,&,@,#,$,^,*,?,_,~])/;
if(email_regex.test(email)==false)
{
alert("Please Enter Correct Email");
return false;
}
else if(pass.length<8 || password_regex1.test(pass)==false || password_regex2.test(pass)==false || password_regex3.test(pass)==false)
{
alert("Please Enter Strong Password");
return false;
}
else
{
return true;
}
}
</script>
</head>
<body>
<div id="wrapper">
<div id="form_div">
<p id="form_label">SIGNUP FORM</p>
<form method="post" onsubmit="return validate();">
<input type="text" id="email" placeholder="Enter Email">>
<input type="password" id="password" placeholder="*******">>
<input type="submit" value="SUBMIT">
</form>
<p id="form_note">Password Must Be At Least 8 Digits Long And Contains One UpperCase, One LowerCase And One Special Character</p>
</div>
</div>
</body>
</html>
در این گام ما یک فرم اعتبار سنجی داده ایجاد کرده ایم ما از اعتبار سنجی داده ها هنگامی که کاربر تمام جزئیات را وارد و کلید submit را فشرد انجام می دهیم. کا تابع validate() خواند ه می شود در تابع validate() ما مقدار ایمیل و رمز عبور را گرفته و عبارات منظمی را برای هر دو ایمیل و پسورد برای اعتبارسنجی می نویسیم . ما ایمیل را با عبارات منظم خود چک می کنیم که آیا ایمیل معتبر است یا خیر و اگر ایمیل غلط بود ما به کاربر هشدار می دهیم که ایمیل وارد شده نامعتبر است. در سنجش password_regex1 ما چک می کنیم که آیا رمز عبور حد اقل یک حرف با حروف بزرگ و یک حرف با حروف کوچک داشته باشد. و password regex2 چک می کند که رمز عبور شامل عدد باشد. و password_regex3 چک می کند که رمز عبور دارای کارکترهای ویژه و خاص باشد اگر همه این ها درست بود ما به ایمیل می رویم وگرنه هشتاری را برای درج رمز عبور قویتر نمایش می دهیم.
گام 2 ایجاد یک فایل CSS که ما با کد های زیر وارد و به نام validate_style.css ذخیره کرده ایم.
body
{
margin:0 auto;
padding:0px;
text-align:center;
width:100%;
font-family: "Myriad Pro","Helvetica Neue",Helvetica,Arial,Sans-Serif;
background-color:#ECF0F1;
}
#wrapper
{
margin:0 auto;
padding:0px;
text-align:center;
width:995px;
}
#wrapper h1
{
margin-top:50px;
font-size:45px;
color:#626567;
}
#wrapper h1 p
{
font-size:18px;
}
#form_div
{
background-color:#B3B6B7;
width:300px;
margin-left:330px;
padding:10px;
}
#form_div #form_label
{
margin:0px;
margin-bottom:20px;
font-size:25px;
font-weight:bold;
color:#626567;
text-decoration:underline;
}
#form_div input[type="text"],input[type="password"]
{
width:250px;
height:35px;
padding:10px;
margin-top:5px;
}
#form_div input[type="submit"]
{
width:248px;
height:35px;
margin-top:5px;
margin-left:-3px;
background:none;
border:1px solid white;
color:white;
font-weight:bold;
}
#form_div #form_note
{
color:#424242;
font-size:14px;
font-style:italic;
}