عدم پردازش تگهای html در ایمیلهای ارسالی

i-php-i

Active Member
وقتی کاربر کلمه رمزش رو فراموش کرده، عبارت زیر رو برای کاربر ایمیل می کنم. ایمیل بخوبی ارسال می شه اما مشکل اینجاست که تگهایی که توی این متن قرار می دم بجای اینکه پردازش بشن، نمایش داده می شن و کاربر می تونه تگها رو ببینه.

لطفا بگید که چطور می تونم این مشکل رو حل کنم؟

PHP:
$message =  "<p>براي تغيير کلمه رمز، لطفا روي لينک زير کليک کنيد</p><a href=\"http://$_SERVER[HTTP_HOST]/admin/main/forget.php?word=$key\">http://$_SERVER[HTTP_HOST]/admin/main/forget.php?word=$key</a><br /><br />با تشکر<br /><br />http://$_SERVER[HTTP_HOST]";
                   mail($to,$subj,$message);
 

Masoud1365

مدیر انجمن
شما وقتی که از " ( دبل کوتیشن ) استفاده میکنید کل چیزهایی که داخل رشته هست چاپ میشه و فقط متغیرهات مقدارهاشون چاپ میشه اما اینجوری که شما استفاده کردید احتمالا ارور هم باید بده !
اینجوری هم میتونید استفاده کنی :
PHP:
echo $string1.' string string '.$string2.' string string'.$string3;
 

i-php-i

Active Member
dd

شما وقتی که از " ( دبل کوتیشن ) استفاده میکنید کل چیزهایی که داخل رشته هست چاپ میشه و فقط متغیرهات مقدارهاشون چاپ میشه اما اینجوری که شما استفاده کردید احتمالا ارور هم باید بده !
اینجوری هم میتونید استفاده کنی :
PHP:
echo $string1.' string string '.$string2.' string string'.$string3;
همه دبل کوتیشن ها رو حذف کردم و به شکل زیر استفاده کردم ولی هنوز هم تگها نمایش داده می شن.

بنظرتون مشکل چیه؟

PHP:
                    $message =  '<p>براي تغيير کلمه رمز، لطفا روي لينک زير کليک کنيد</p><a href=http://'.$_SERVER[HTTP_HOST].'/admin/forget.php?word='.$key.'>http://'.$_SERVER[HTTP_HOST].'/admin/forget.php?word='.$key.'</a><br /><br />با تشکر<br /><br />http://'.$_SERVER[HTTP_HOST];
 

i-php-i

Active Member
برای ایمیلی که میخواهید html بفرستید باید هدر تعریف کنید !
اینجا رو ببینید
مشکل تگهای اچ تی ام ال حل شد.

الان می خوام فونت متن فارسی رو تغییر بدم و اون رو به فونت تاهوما تغییر بدم. از تگ استایل توی کدهای HTML استفاده کردم ولی فایده نداشت.

تگهایی که خود html برای اینکار داره ظاهرا منسوخ شده هستن و نمی شه ازشون استفاده کرد.

چطور می تونم فونت متنها رو تغییر بدم؟
 

Masoud1365

مدیر انجمن
مگه میشه ؟ من با همین روش ایمیل html میفرستم و مشکلی هم نداره کدتونو بزارید تا بررسی بشه !
 

i-php-i

Active Member
مگه میشه ؟ من با همین روش ایمیل html میفرستم و مشکلی هم نداره کدتونو بزارید تا بررسی بشه !
من استایل کلی رو توی تگ بادی قرار دادم ولی تاثیری نداشت.

HTML:
<body style="font-family:Tahoma, Geneva, sans-serif; font-size:12px;">
 

D.A.V.O.O.D

Member
سلام ،
خب شما نبايد به body استايل بدي !

كلا قسمتي كه ميخواي ايميل كني بايد محتويات بين تگ body باشه ،
بدين صورت كار كن :

PHP:
$mail_body = '<div style="font: 11px tahoma">سلام جهان !</div>';
 

i-php-i

Active Member
سلام ،
خب شما نبايد به body استايل بدي !

كلا قسمتي كه ميخواي ايميل كني بايد محتويات بين تگ body باشه ،
بدين صورت كار كن :

PHP:
$mail_body = '<div style="font: 11px tahoma">سلام جهان !</div>';
با توجه به اینکه اکثر وب سایتها که امکان ارسال و دریافت ایمیل دارن، آیا لازم هست که متن ایمیل رو در فرمت یک فایل کامل html قرار بدیم؟ یا اینکه فقط کافیه که متن پیام خودمون رو توی یه تگ div قرار بدیم؟
 

D.A.V.O.O.D

Member
با توجه به اینکه اکثر وب سایتها که امکان ارسال و دریافت ایمیل دارن، آیا لازم هست که متن ایمیل رو در فرمت یک فایل کامل html قرار بدیم؟ یا اینکه فقط کافیه که متن پیام خودمون رو توی یه تگ div قرار بدیم؟

نه نيازي نيستش ، چون تمام گيرنده هاي ميل ( مثل جيميل ، ياهو و ... ) فقط قسمت بين <body> و </body> را فقط نمايش ميدن .
 

جدیدترین ارسال ها

بالا