عبدالله ابو حميد نشر 6 أبريل 2020 أرسل تقرير نشر 6 أبريل 2020 السلام عليكم ورحمة الله وبركاته، قمت باستخدام دالة mail() ودمجها مع نموذج اتصال Contact form باستخدام لغة php، ولكن لاحظت أن الرسائل تصل إلى مجلد الـ Spam أو Junk ، فما هو الحل؟ علماً بأنني لا أريد استخدام مكتبة PHPmailer شكراً جزيلاً 1 اقتباس
0 Mohamd Imran نشر 6 أبريل 2020 أرسل تقرير نشر 6 أبريل 2020 بتاريخ On 6/4/2020 at 15:12 قال عبدالله التميمي5: السلام عليكم ورحمة الله وبركاته، قمت باستخدام دالة mail() ودمجها مع نموذج اتصال Contact form باستخدام لغة php، ولكن لاحظت أن الرسائل تصل إلى مجلد الـ Spam أو Junk ، فما هو الحل؟ علماً بأنني لا أريد استخدام مكتبة PHPmailer شكراً جزيلاً أظهر المزيد وعليكم السلام اخي @عبدالله التميمي5 استخدام فنكشن mail() بدون headers يخبر ال spam filters بانه رسالتك هي سبام ,لحل هذه المشكلة نقوم باضافة هيدرز , مثال لاستخدام mail(); بدون هيدرز (الطريقة التقليدية) <? mail("recipient@recipient.com", "Message", "A simple message.", "From: The Sender <sender@sender.com>"); ?> هذه بعض الهيدرز التي يجب استخدامها واضافتها للكود الخاص بك وارفاق متغير header <? $headers .= "Reply-To: The Sender <sender@sender.com>\r\n"; $headers .= "Return-Path: The Sender <sender@sender.com>\r\n"; $headers .= "From: The Sender <senter@sender.com>\r\n"; $headers .= "Organization: Sender Organization\r\n"; $headers .= "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/plain; charset=iso-8859-1\r\n"; $headers .= "X-Priority: 3\r\n"; $headers .= "X-Mailer: PHP". phpversion() ."\r\n" ?> الاستخدام مع فنكشن mail() يكون هكذا <? mail("recipient@recipient.com", "Message", "A simple message.", $headers); ?> ايضا ملاحظة اخرى عند استخدام ايميل المرسل تاكد من ان يكون مطابق للنطاق الذي تم منه ارسال الرسالة مثلا الايميل example@example.com النطاق(الدومين) يجب ان يكون هكذا example.com تحياتي اتمنى ان اكون قد افدتك شكرا لك اقتباس
0 عبدالله ابو حميد نشر 6 أبريل 2020 الكاتب أرسل تقرير نشر 6 أبريل 2020 بتاريخ On 6/4/2020 at 15:40 قال Mohamd Imran: وعليكم السلام اخي @عبدالله التميمي5 استخدام فنكشن mail() بدون headers يخبر ال spam filters بانه رسالتك هي سبام ,لحل هذه المشكلة نقوم باضافة هيدرز , مثال لاستخدام mail(); بدون هيدرز (الطريقة التقليدية) <? mail("recipient@recipient.com", "Message", "A simple message.", "From: The Sender <sender@sender.com>"); ?> هذه بعض الهيدرز التي يجب استخدامها واضافتها للكود الخاص بك وارفاق متغير header <? $headers .= "Reply-To: The Sender <sender@sender.com>\r\n"; $headers .= "Return-Path: The Sender <sender@sender.com>\r\n"; $headers .= "From: The Sender <senter@sender.com>\r\n"; $headers .= "Organization: Sender Organization\r\n"; $headers .= "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/plain; charset=iso-8859-1\r\n"; $headers .= "X-Priority: 3\r\n"; $headers .= "X-Mailer: PHP". phpversion() ."\r\n" ?> الاستخدام مع فنكشن mail() يكون هكذا <? mail("recipient@recipient.com", "Message", "A simple message.", $headers); ?> ايضا ملاحظة اخرى عند استخدام ايميل المرسل تاكد من ان يكون مطابق للنطاق الذي تم منه ارسال الرسالة مثلا الايميل example@example.com النطاق(الدومين) يجب ان يكون هكذا example.com تحياتي اتمنى ان اكون قد افدتك شكرا لك أظهر المزيد شكراً على سرعة الرد، أنا أستخدم $headers بالفعل، لكن هناك ملاحظتين: أولاً: الرسائل تكون كـ HTML ثانياً: بالنسبة لمطابقة ايميل المرسل بالنطاق، لاحظت عند التدقيق في تفاصيل الرسالة عبر الجيميل، التالي: تم الإرسال بواسطة: server2.example.com تم التوقيع بواسطة: example.com الأمان: التشفير العادي (طبقة النقل الآمنة (TLS)) مزيد من المعلومات لاحظ النطاق الفرعي: server2 تحياتي اقتباس
0 Mohamd Imran نشر 6 أبريل 2020 أرسل تقرير نشر 6 أبريل 2020 بتاريخ On 6/4/2020 at 16:00 قال عبدالله التميمي5: شكراً على سرعة الرد، أنا أستخدم $headers بالفعل، لكن هناك ملاحظتين: أولاً: الرسائل تكون كـ HTML ثانياً: بالنسبة لمطابقة ايميل المرسل بالنطاق، لاحظت عند التدقيق في تفاصيل الرسالة عبر الجيميل، التالي: تم الإرسال بواسطة: server2.example.com تم التوقيع بواسطة: example.com الأمان: التشفير العادي (طبقة النقل الآمنة (TLS)) مزيد من المعلومات لاحظ النطاق الفرعي: server2 تحياتي أظهر المزيد العفو اه لحل المشكلة جرب اضافة هذا لكود ال mail() هكذا مع تبديل الايميل بالايميل الخاص بك <? mail("recipient@recipient.com", "Message", "A simple message.", $headers,'-f from@example.com'); ?> لاحظ اضافة '-f from@example.com' في نهاية المتغيرات وخبرني بالنتيجة تحياتي اقتباس
0 عبدالله ابو حميد نشر 6 أبريل 2020 الكاتب أرسل تقرير نشر 6 أبريل 2020 بتاريخ On 6/4/2020 at 16:13 قال Mohamd Imran: العفو اه لحل المشكلة جرب اضافة هذا لكود ال mail() هكذا مع تبديل الايميل بالايميل الخاص بك <? mail("recipient@recipient.com", "Message", "A simple message.", $headers,'-f from@example.com'); ?> لاحظ اضافة '-f from@example.com' في نهاية المتغيرات وخبرني بالنتيجة تحياتي أظهر المزيد مرحباً، حتى لو كنت أستخدم هذا الكود؟ $headers_client .= 'From: <info@example.com>' . "\r\n"; اقتباس
0 Mohamd Imran نشر 6 أبريل 2020 أرسل تقرير نشر 6 أبريل 2020 بتاريخ On 6/4/2020 at 16:32 قال عبدالله التميمي5: مرحباً، حتى لو كنت أستخدم هذا الكود؟ $headers_client .= 'From: <info@example.com>' . "\r\n"; أظهر المزيد صحيح اخي لانه عادتا يتم تجاهله لهيك بتحصل هيك مشكلة تحياتي اقتباس
0 عبدالله ابو حميد نشر 6 أبريل 2020 الكاتب أرسل تقرير نشر 6 أبريل 2020 بتاريخ On 6/4/2020 at 16:43 قال Mohamd Imran: صحيح اخي لانه عادتا يتم تجاهله لهيك بتحصل هيك مشكلة تحياتي أظهر المزيد حسناً، بقي شيء، أنا أستخدم دالة mail كالتالي: mail($email_client, $subject_client, $message_client, $headers_client, $parameters); لاحظ أنها تحتوي على 5 عناصر وأعتقد أن هذا هو الحد الأقصى المسموح به، فكيف أضيف هذ الكود الذي أعطيتني إياه معهم؟ '-f from@example.com' هل يصلح أن أضيفه مع $headers .= في السطر الأخير مثلاً؟ بتاريخ On 6/4/2020 at 17:04 قال عبدالله التميمي5: حسناً، بقي شيء، أنا أستخدم دالة mail كالتالي: mail($email_client, $subject_client, $message_client, $headers_client, $parameters); لاحظ أنها تحتوي على 5 عناصر وأعتقد أن هذا هو الحد الأقصى المسموح به من المتغيرات، فكيف أضيف هذ الكود الذي أعطيتني إياه معهم؟ '-f from@example.com' هل يصلح أن أضيفه مع $headers .= في السطر الأخير مثلاً؟ أظهر المزيد اقتباس
0 Mohamd Imran نشر 6 أبريل 2020 أرسل تقرير نشر 6 أبريل 2020 بتاريخ On 6/4/2020 at 17:04 قال عبدالله التميمي5: حسناً، بقي شيء، أنا أستخدم دالة mail كالتالي: mail($email_client, $subject_client, $message_client, $headers_client, $parameters); لاحظ أنها تحتوي على 5 عناصر وأعتقد أن هذا هو الحد الأقصى المسموح به، فكيف أضيف هذ الكود الذي أعطيتني إياه معهم؟ '-f from@example.com' هل يصلح أن أضيفه مع $headers .= في السطر الأخير مثلاً؟ أظهر المزيد هل يمكنك ارسال ماذا يحتوي متغير parameters ؟ , ايضا يمكنك اضافتها في متغير parameters تحياتي شكرا لك اقتباس
0 عبدالله ابو حميد نشر 6 أبريل 2020 الكاتب أرسل تقرير نشر 6 أبريل 2020 بتاريخ On 6/4/2020 at 18:41 قال Mohamd Imran: هل يمكنك ارسال ماذا يحتوي متغير parameters ؟ , ايضا يمكنك اضافتها في متغير parameters تحياتي شكرا لك أظهر المزيد استبدلت هذا المتغير بالكود الذي أعطيتني، عموماً للأسف الرسالة تصل للسبام حتى الآن. للعلم، أنا أستخدم الدالة mail مرتين مع نفس النموذج، بحيث رسالة تذهب لي كمدير الموقع، ورسالة أخرى مختلفة تذهب للزائر، أما الرسالة التي تذهب لي كمدير للموقع فأصبحت تصلني على الوارد بلا مشاكل، أما الرسائل التي من المفترض أن يستقبلها الزائر على الوارد تذهب للسبام. اقتباس
0 Mohamd Imran نشر 6 أبريل 2020 أرسل تقرير نشر 6 أبريل 2020 بتاريخ On 6/4/2020 at 19:22 قال عبدالله التميمي5: استبدلت هذا المتغير بالكود الذي أعطيتني، عموماً للأسف الرسالة تصل للسبام حتى الآن. للعلم، أنا أستخدم الدالة mail مرتين مع نفس النموذج، بحيث رسالة تذهب لي كمدير الموقع، ورسالة أخرى مختلفة تذهب للزائر، أما الرسالة التي تذهب لي كمدير للموقع فأصبحت تصلني على الوارد بلا مشاكل، أما الرسائل التي من المفترض أن يستقبلها الزائر على الوارد تذهب للسبام. أظهر المزيد بتاريخ On 6/4/2020 at 19:22 قال عبدالله التميمي5: أما الرسائل التي من المفترض أن يستقبلها الزائر على الوارد تذهب للسبام. أظهر المزيد اتوقع نفس المشكلة هل يمكن ارسال الهيدرز يلي مرفقة مع البريد الخاص بالزائر تحياتي اقتباس
0 عبدالله ابو حميد نشر 6 أبريل 2020 الكاتب أرسل تقرير نشر 6 أبريل 2020 $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset: utf8\r\n"; $headers .= 'Cc: example@gmail.com' . "\r\n"; // *** CC Emails *** // $headers .= "X-Priority: 3\r\n"; $headers .= "X-Mailer: PHP". phpversion() ."\r\n"; أما الدالة فقد وضعتها على النحو التالي: mail($to, $subject, $message, $headers, '-f info@example.com'); اقتباس
0 Mohamd Imran نشر 6 أبريل 2020 أرسل تقرير نشر 6 أبريل 2020 بتاريخ On 6/4/2020 at 21:16 قال عبدالله التميمي5: $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset: utf8\r\n"; $headers .= 'Cc: example@gmail.com' . "\r\n"; // *** CC Emails *** // $headers .= "X-Priority: 3\r\n"; $headers .= "X-Mailer: PHP". phpversion() ."\r\n"; أما الدالة فقد وضعتها على النحو التالي: mail($to, $subject, $message, $headers, '-f info@example.com'); أظهر المزيد هل هذا الكود غير مستخدم $headers_client .= 'From: <info@example.com>' . "\r\n"; يجب ان تضيفه في الهيدرز مع استخدام -f info@example.com تحياتي شكرا لك اقتباس
0 عبدالله ابو حميد نشر 7 أبريل 2020 الكاتب أرسل تقرير نشر 7 أبريل 2020 المعذرة أخطأت ووضعت الكود الخاص برسالة مدير الموقع، أما كود الرسالة التي تصل لمستخدمي الموقع فهو كالتالي: $headers_client = "MIME-Version: 1.0\r\n"; $headers_client .= "Content-type: text/html; charset: utf8\r\n"; $headers_client .= 'From: <info@example.com>' . "\r\n"; $headers_client .= "X-Priority: 3\r\n"; $headers_client .= "X-Mailer: PHP". phpversion() ."\r\n"; mail($email_client, $subject_client, $message_client, $headers_client, '-f info@example.com'); اقتباس
0 عزام عبد الحافظ نشر 19 أبريل 2020 أرسل تقرير نشر 19 أبريل 2020 السلام عليكم . قد واجهتني نفس المشكلة من قبل ,في بعض الأحيان إستخدام mail() في php قد يجعل تخزين الرسائل في spam/junk , يجب عليك أن تعدل في حساب الgmail الذي تريد استلام الرسائل فيه , بعد تسجيل الدخول, إدخل على هذا الرابط و إنقر على العلامة بلون الأصفر , هكذا سوف تعطي صلاحية للبرامج ضعيفة الأمان مثل mail() في php. أطيب تحياتي. اقتباس
السؤال
عبدالله ابو حميد
السلام عليكم ورحمة الله وبركاته،
قمت باستخدام دالة mail() ودمجها مع نموذج اتصال Contact form باستخدام لغة php، ولكن لاحظت أن الرسائل تصل إلى مجلد الـ Spam أو Junk ، فما هو الحل؟
علماً بأنني لا أريد استخدام مكتبة PHPmailer
شكراً جزيلاً
13 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.