PDA

View Full Version : عدم درج = در ایمیل html



xoogle.ir
چهارشنبه 03 شهریور 1389, 15:15 عصر
برای بازیابی پسورد بک صفحه طراحی کردم که یک آیدی رو به همراه درخواست در بانک ذخیره میکنه و لینک بازیابی رمز رو برای کاربر به این شکل ارسال میکنه :



http://site.com/file.php?id=61762716716


وقتی کاربر روی این لینک که به ایمیلش ارسال میشه کلیک میکنه برنامه یک رمز عبور جدید براش ارسال میکنه اما مشکل اینجاست که در gmail این علامت = چاپ نمیشه بعنی کاربر gmail لینک رو این جوری میبینه :



http://site.com/file.php?id61762716716


و به همین خاطر نمیتونه رمزش رو بازیابی کنه این مشکل فقط در gmail مشاهده شده و یاهو باهاش مشکلی نداره.
ممنون میشم یه راهی جلو پام بذرارید تا این مشکا برطرف بشه

xoogle.ir
چهارشنبه 03 شهریور 1389, 16:58 عصر
دوستان یه نگاهی هم به اینجا بکنید :گریه:

Hell Lord
چهارشنبه 03 شهریور 1389, 21:06 عصر
کد ارسال ایمیلتان چیست!؟

binyaft
چهارشنبه 03 شهریور 1389, 22:44 عصر
خوب جی میل داره اینو فیلتر میکنه میتونید با mod_rewrite اونو به صورته زیر دربیارید

http://site.com/newpass/61762716716

xoogle.ir
پنج شنبه 04 شهریور 1389, 11:22 صبح
مشکل عدم درج علامت = رو تونستم حل کنم اما الان مشکل دیگه اینه که اصلا قالب html ایمیل در gmail لجاظ نمیشه و ایمیل ها به صورت text ارسال میشن در حالی که توی یاهو live و ... همه چیز درسته !!!!



// Sending mail
$to = $email;
$from = "security@site.com";
$subject = "Forgot Password";

$headers = "From: $from\r\n";
$headers .= "Content-type: text/html\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=utf-8\r\n";
$headers .= "Content-Transfer-Encoding: quoted-printable\r\n";

// begin of HTML message
$message ='
<html>
<div style="direction: rtl; background: #f0efef; font: normal 12px Tahoma, Arial; line-height: 20px;">
<div style="background: #ffffff; -moz-border-radius: 3px; -webkit-border-radius: 3px; padding: 30px 20px;">
<h1 style="border-bottom: 3px solid #7bd8e6; padding: 0 30px 5px 0; color: #716f6d; font: bold 17px Arial, Tahoma;">بازیابی رمز </h1>
<table style="width: 100%;">
<tr>
<td style="width: 20px;">&nbsp;</td>
<td>
<p style="text-align: center; font: normal 12px Tahoma, Arial;"><a href="http://site.com/forgot.php?id='.$key.'" style="text-decoration: none;">بازیابی رمز </a></p>
</td>
</tr>
</table>
</div>
</div>
</html>
';
//end of message

// send the email.
mail($to, $subject, $message, $headers);


این کد ایمیل منه البته مجبور شدم قسمت زیادی از متن html رو حذف کنم به خاطر عدم شناسایی سایت :لبخند:
کسی تا به حال ایمیل html ای که توی جیمیل به درستی نمایش داده بشه ارسال کرده ؟ من سورس صفحه ایمیل رو که نگاه کردم دیدم gmail کل استایل ها رو حذف کرده به همین خاطر ایمیل به صورت متن نمایش داده میشه.

binyaft
پنج شنبه 04 شهریور 1389, 12:54 عصر
کد برای ارسال ایمیل با قالب html توی انجمن زیاده جستجو کن زیاده

Hell Lord
شنبه 06 شهریور 1389, 02:27 صبح
چرا شما 2 بار توی هدر Content Type را مشخص کرده اید؟
دومی را بردارید و تست کنید. :


$headers = "From: $from\r\n";
$headers .= "Content-type: text/html\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$headers .= "From: $from\r\n";";

xoogle.ir
شنبه 06 شهریور 1389, 10:10 صبح
مشکل از اون هم نیست قبلا تست کردم. شما یک کلاس خوب برای ارسال ایمیل ندارید معرفی کنید ؟

binyaft
شنبه 06 شهریور 1389, 10:15 صبح
phpmailer رو امتحان کردید؟؟؟

xoogle.ir
شنبه 06 شهریور 1389, 10:16 صبح
من امتحان نکردم اما یکی از دوستان میگفت گاهی اوقات ایمیل نمیفرسته !
حالا اگر کدش رو بذارید ممنون میشم.

Hell Lord
یک شنبه 07 شهریور 1389, 00:45 صبح
نگاهی به اینجا بندازید (http://www.phpclasses.org/search.html?words=email&restrict[0]=C&restrict[1]=R&restrict[2]=B&restrict[3]=V&restrict[4]=D&forums=F&go_search=1&advanced=1)

binyaft
یک شنبه 07 شهریور 1389, 09:31 صبح
مگه همون تابع mail کار نمیکنه؟؟؟

xoogle.ir
یک شنبه 07 شهریور 1389, 10:16 صبح
با همون کلاس phpmailer دارم ایمیل میفرستم. فعلا که درست کار میکنه خیلی ممنون از دوستان.