اذهب إلى المحتوى
  • 0

الرسائل الواردة تصل إلى مجلد Spam أو Junk - عند استخدام دالة mail في php

عبدالله ابو حميد

السؤال

السلام عليكم ورحمة الله وبركاته،

قمت باستخدام دالة mail() ودمجها مع نموذج اتصال Contact form باستخدام لغة php، ولكن لاحظت أن الرسائل تصل إلى مجلد الـ Spam أو Junk ، فما هو الحل؟

علماً بأنني لا أريد استخدام مكتبة PHPmailer

 

شكراً جزيلاً :)

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0
بتاريخ 16 دقائق مضت قال عبدالله التميمي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
بتاريخ 14 دقائق مضت قال 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
بتاريخ 9 دقائق مضت قال عبدالله التميمي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
بتاريخ 18 دقائق مضت قال 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
بتاريخ 10 دقائق مضت قال عبدالله التميمي5:

مرحباً، حتى لو كنت أستخدم هذا الكود؟


$headers_client .= 'From: <info@example.com>' . "\r\n";

 

صحيح اخي لانه عادتا يتم تجاهله لهيك بتحصل هيك مشكلة 

 

تحياتي

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 18 دقائق مضت قال Mohamd Imran:

صحيح اخي لانه عادتا يتم تجاهله لهيك بتحصل هيك مشكلة 

 

تحياتي

حسناً، بقي شيء، أنا أستخدم دالة mail كالتالي:

mail($email_client, $subject_client, $message_client, $headers_client, $parameters);

لاحظ أنها تحتوي على 5 عناصر وأعتقد أن هذا هو الحد الأقصى المسموح به، فكيف أضيف هذ الكود الذي أعطيتني إياه معهم؟

'-f from@example.com'

هل يصلح أن أضيفه مع $headers .= في السطر الأخير مثلاً؟

بتاريخ 9 دقائق مضت قال عبدالله التميمي5:

حسناً، بقي شيء، أنا أستخدم دالة mail كالتالي:


mail($email_client, $subject_client, $message_client, $headers_client, $parameters);

لاحظ أنها تحتوي على 5 عناصر وأعتقد أن هذا هو الحد الأقصى المسموح به من المتغيرات، فكيف أضيف هذ الكود الذي أعطيتني إياه معهم؟


'-f from@example.com'

هل يصلح أن أضيفه مع $headers .= في السطر الأخير مثلاً؟

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 1 ساعة قال عبدالله التميمي5:

حسناً، بقي شيء، أنا أستخدم دالة mail كالتالي:


mail($email_client, $subject_client, $message_client, $headers_client, $parameters);

لاحظ أنها تحتوي على 5 عناصر وأعتقد أن هذا هو الحد الأقصى المسموح به، فكيف أضيف هذ الكود الذي أعطيتني إياه معهم؟


'-f from@example.com'

هل يصلح أن أضيفه مع $headers .= في السطر الأخير مثلاً؟

 

هل يمكنك ارسال ماذا يحتوي متغير  parameters ؟ , 
ايضا يمكنك اضافتها في متغير parameters 

تحياتي

شكرا لك

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 25 دقائق مضت قال Mohamd Imran:

هل يمكنك ارسال ماذا يحتوي متغير  parameters ؟ , 
ايضا يمكنك اضافتها في متغير parameters 

تحياتي

شكرا لك

استبدلت هذا المتغير بالكود الذي أعطيتني، عموماً للأسف الرسالة تصل للسبام حتى الآن.

للعلم، أنا أستخدم الدالة mail مرتين مع نفس النموذج، بحيث رسالة تذهب لي كمدير الموقع، ورسالة أخرى مختلفة تذهب للزائر، أما الرسالة التي تذهب لي كمدير للموقع فأصبحت تصلني على الوارد بلا مشاكل، أما الرسائل التي من المفترض أن يستقبلها الزائر على الوارد تذهب للسبام. :(

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 26 دقائق مضت قال عبدالله التميمي5:

استبدلت هذا المتغير بالكود الذي أعطيتني، عموماً للأسف الرسالة تصل للسبام حتى الآن.

للعلم، أنا أستخدم الدالة mail مرتين مع نفس النموذج، بحيث رسالة تذهب لي كمدير الموقع، ورسالة أخرى مختلفة تذهب للزائر، أما الرسالة التي تذهب لي كمدير للموقع فأصبحت تصلني على الوارد بلا مشاكل، أما الرسائل التي من المفترض أن يستقبلها الزائر على الوارد تذهب للسبام. :(

 

بتاريخ 26 دقائق مضت قال عبدالله التميمي5:

أما الرسائل التي من المفترض أن يستقبلها الزائر على الوارد تذهب للسبام.

اتوقع نفس المشكلة هل يمكن ارسال الهيدرز يلي مرفقة مع البريد الخاص بالزائر 

تحياتي

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
$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
بتاريخ منذ ساعة مضت قال عبدالله التميمي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

المعذرة أخطأت ووضعت الكود الخاص برسالة مدير الموقع، أما كود الرسالة التي تصل لمستخدمي الموقع فهو كالتالي:

$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

السلام عليكم .

قد واجهتني نفس المشكلة من قبل ,في بعض الأحيان إستخدام  mail() في php  قد يجعل تخزين الرسائل في spam/junk ,

يجب عليك أن تعدل في حساب الgmail الذي تريد استلام الرسائل فيه , بعد تسجيل الدخول, إدخل على هذا الرابط و إنقر على العلامة بلون الأصفر , هكذا سوف تعطي صلاحية للبرامج ضعيفة الأمان مثل mail() في php.

أطيب تحياتي.

less_secure.PNG

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...