ما هي بعض الطرق لإرسال صفحة ويب إلى البريد الإلكتروني؟
وبطرق مختلفة حسب ما قصده صاحب السؤال.
على سبيل المثال، إذا كان لديك برنامج لقطة شاشة، فيمكنك التقاط لقطة شاشة صفحة مفتوحةوأرسلها كصورة إلى الشخص الذي تحتاجه عبر البريد الإلكتروني. في هذه الحالة ستكون الصورة ميتة ولن تعمل الروابط.
أظن أن الإجابة الأكثر صحة هي حفظ الصفحة باستخدام الطرق القياسية. انقر على قائمة "ملف" في المتصفح، ثم "حفظ باسم" واحفظ صفحة الويب بأكملها. إذا كان الشخص الذي أرسلت إليه هذه الصفحة لديه إمكانية الوصول إلى الإنترنت، فسيتمكن من متابعة الروابط من الصفحة، وستعمل.
في الحالة الأولى، سيكون من الأسهل فتح الصفحة إذا تم تحديد تنسيق صورة شائع - bmp، jpg، gif. وفي الحالة الثانية، قد تكون هناك مشاكل في عرض صفحة محفوظة في متصفح ولكن تم فتحها في متصفح آخر، وقد لا يتم عرضها بشكل صحيح أو قد لا يتم فتحها على الإطلاق.
تم تصميم كلتا الحالتين للحفظ في الأرشيف، لإرسالها إلى شخص ليس لديه إمكانية الوصول المستمر إلى الإنترنت. في هذه الحالة، من الأفضل إرفاقه بالحرف.
ولكن إذا كان لدى الشخص الإنترنت دائمًا، فلماذا يحفظ ويرسل له صفحة أو ينشئ مرفقًا؟ من الأسهل بكثير النسخ إليه شريط العناوينرابط إلى الصفحة المطلوبة والصقه في نص الرسالة.
للقيام بذلك، يمكنك استخدام المتخصصة الخدمات عبر الإنترنتللأرشفة، على سبيل المثال - Archive.today: archive today
هنا تحتاج فقط إلى وضع عنوان URL الخاص بالمورد وسيقوم النظام نفسه بإنشاء ملف مضغوط ورابط URL إلى "لقطة" لصفحة الويب، والتي ستكون دائمًا متصلة بالإنترنت، حتى لو اختفى الإصدار الأصلي.
يمكن إرفاق ملف مضغوط به بريد إلكتروني، الصق رابط "لقطة" صفحة الويب في حقل البريد الإلكتروني وأرسله بالكامل عبر بريد إلكترونيأو الحفظ بأي طريقة أخرى.
على سبيل المثال، إصدار اليوم من صفحة الأسئلة الشائعة في موسكو (مع ملف مضغوط) متاح هنا: أرشيف اليوم
يمكنك أيضًا استخدام الخدمات عبر الإنترنت لالتقاط لقطات الشاشة، على سبيل المثال Web-capture: web-capture net
إحدى الوظائف الأكثر شيوعًا على الموقع هي نموذج الطلب أو الطلب، حيث يتم إرسال البيانات منه عبر البريد الإلكتروني إلى مالك الموقع. كقاعدة عامة، هذه النماذج بسيطة وتتكون من حقلين أو ثلاثة حقول لإدخال البيانات. كيفية إنشاء نموذج الطلب هذا؟ وهذا يتطلب استخدام لغة ترميز HTML ولغة برمجة PHP.
لغة ترميز HTML نفسها بسيطة؛ كل ما عليك فعله هو معرفة كيفية ومكان وضع علامات معينة. مع لغة برمجة PHP، الأمور أكثر تعقيدًا بعض الشيء.
بالنسبة للمبرمج، فإن إنشاء مثل هذا النموذج ليس بالأمر الصعب، ولكن بالنسبة لمصمم تخطيط HTML، قد تبدو بعض الإجراءات صعبة.
السطر الأول سيكون على النحو التالي
الآن دعونا نجمع كل شيء معًا.
الآن دعونا نجعل الحقول في النموذج إلزامية. لدينا الكود التالي:
سيكون هذا ملفًا يسمى send.php
في الملف، في المرحلة الأولى، تحتاج إلى قبول البيانات من مصفوفة النشر. للقيام بذلك، نقوم بإنشاء متغيرين:
$fio = $_POST["fio"];
$email = $_POST["email"];
تُسبق أسماء المتغيرات في لغة PHP بعلامة $، ويتم وضع فاصلة منقوطة في نهاية كل سطر. $_POST عبارة عن مصفوفة يتم إرسال البيانات من النموذج إليها. في نموذج html، يتم تحديد طريقة الإرسال على أنها طريقة = "post". وبالتالي، يتم أخذ متغيرين من نماذج أتش تي أم أل. لحماية موقعك، تحتاج إلى تمرير هذه المتغيرات من خلال عدة مرشحات - وظائف php.
ستقوم الوظيفة الأولى بتحويل كافة الأحرف التي سيحاول المستخدم إضافتها إلى النموذج:
في هذه الحالة، لا يتم إنشاء متغيرات جديدة في PHP، ولكن يتم استخدام المتغيرات الموجودة. ما سيفعله الفلتر هو تحويل الشخصية "<" в "<". Также он поступить с другими символами, встречающимися в html коде.
تقوم الوظيفة الثانية بفك ترميز عنوان URL إذا حاول المستخدم إضافته إلى النموذج.
$fio = urldecode($fio);
$email = urldecode($email);
أما الدالة الثالثة فسوف نقوم بإزالة المسافات من بداية السطر ونهايته إن وجدت:
$fio = تقليم($fio);
البريد الإلكتروني $ = تقليم($email);
هناك وظائف أخرى تسمح لك بتصفية متغيرات PHP. ويعتمد استخدامها على مدى قلقك من أن أحد المهاجمين سيحاول إضافة رمز برنامج إلى نموذج إرسال البريد الإلكتروني بتنسيق html هذا.
التحقق من صحة البيانات المنقولة من نموذج HTML إلى ملف PHP
للتحقق مما إذا كان هذا الرمز يعمل وما إذا كان يتم نقل البيانات، يمكنك ببساطة عرضه على الشاشة باستخدام وظيفة الصدى:
صدى $FIO;
صدى "
";
صدى البريد الإلكتروني $؛
السطر الثاني هنا ضروري لفصل مخرجات متغيرات php إلى أسطر مختلفة.
لإرسال البيانات عبر البريد الإلكتروني، تحتاج إلى استخدام وظيفة البريد في PHP.
mail("إلى أي عنوان سيتم إرساله"، "موضوع الرسالة"، "الرسالة (نص الرسالة)"،"من: من أي بريد إلكتروني يتم إرسال الرسالة \r\n");
على سبيل المثال، تحتاج إلى إرسال البيانات إلى البريد الإلكتروني لمالك الموقع أو مديره [البريد الإلكتروني محمي].
يجب أن يكون موضوع الرسالة واضحا، ويجب أن تحتوي رسالة الرسالة على ما حدده المستخدم في نموذج HTML.
بريد(" [البريد الإلكتروني محمي]"، "الطلب من الموقع"، "الاسم الكامل:".$fio.". البريد الإلكتروني: ".$email،"من: [البريد الإلكتروني محمي]\r\n");
من الضروري إضافة شرط يتحقق مما إذا كان النموذج قد تم إرساله باستخدام PHP إلى عنوان البريد الإلكتروني المحدد.
إذا (البريد(" [البريد الإلكتروني محمي]"، "الطلب من الموقع"، "الاسم الكامل:".$fio.". البريد الإلكتروني: ".$email،"من: [البريد الإلكتروني محمي]\r\n"))
{
صدى "تم إرسال الرسالة بنجاح" ؛
) آخر (
}
وبالتالي، فإن رمز البرنامج الخاص بملف send.php، الذي سيرسل بيانات نموذج HTML إلى البريد الإلكتروني، سيبدو كما يلي:
$fio = $_POST["fio"];
$email = $_POST["email"];
$fio = htmlspecialchars($fio);
$email = htmlspecialchars($email);
$fio = urldecode($fio);
$email = urldecode($email);
$fio = تقليم($fio);
البريد الإلكتروني $ = تقليم($email);
//صدى $fio;
//صدى "
";
// صدى $ البريد الإلكتروني؛
إذا (البريد(" [البريد الإلكتروني محمي]"، "الطلب من الموقع"، "الاسم الكامل:".$fio.". البريد الإلكتروني: ".$email،"من: [البريد الإلكتروني محمي]\r\n"))
(صدى "تم إرسال الرسالة بنجاح"؛
) آخر (
صدى "حدثت أخطاء أثناء إرسال الرسالة"؛
}?>
تم التعليق على ثلاثة أسطر للتحقق مما إذا كان يتم نقل البيانات إلى الملف. إذا لزم الأمر، يمكن إزالتها، لأنها كانت هناك حاجة إليها فقط لتصحيح الأخطاء.
في التعليقات على هذه المقالة، يطرح العديد من الأشخاص سؤالاً حول كيفية التأكد من أن نموذج HTML ورمز PHP لإرسال البيانات إلى البريد الإلكتروني موجودان في ملف واحد، وليس ملفين.
لتنفيذ هذا العمل، تحتاج إلى وضع كود HTML الخاص بالنموذج في ملف send.php وإضافة شرط يتحقق من وجود المتغيرات في مصفوفة POST (يتم إرسال هذه المصفوفة من النموذج). أي أنه إذا كانت المتغيرات في المصفوفة غير موجودة، فأنت بحاجة إلى إظهار النموذج للمستخدم. بخلاف ذلك، ستحتاج إلى تلقي البيانات من المصفوفة وإرسالها إلى المستلم.
دعونا نرى كيفية تغيير كود PHP في ملف send.php:
نتحقق من وجود متغير في مصفوفة POST باستخدام دالة PHP isset(). علامة التعجب قبل هذه الدالة في الحالة تعني النفي. أي أنه إذا كان المتغير غير موجود، فعلينا إظهار النموذج الخاص بنا. إذا لم أضع علامة تعجب، فإن الشرط يعني حرفيًا "إذا كان موجودًا، فقم بإظهار النموذج". وهذا خطأ في حالتنا. وبطبيعة الحال، يمكنك إعادة تسميته إلى Index.php. إذا قمت بإعادة تسمية الملف، فلا تنس إعادة تسمية اسم الملف في السطر