मैं एक ईमेल भेजने के लिए एक अधिसूचना का उपयोग कर रहा हूँउपयोगकर्ता जो किसी ने उनके लिए एक खाता बनाया है। मैं यह पता लगाने की कोशिश कर रहा हूं कि उन्हें पासवर्ड / रीसेट पृष्ठ पर कार्रवाई कैसे भेजें। मुझे पासवर्ड / रीसेट पते के अंत में पासवर्ड रीसेट करने के लिए एक टोकन जोड़ने की आवश्यकता है। यदि नहीं तो जब उपयोगकर्ता पासवर्ड रीसेट करने का प्रयास करता है तो उन्हें एक अमान्य टोकन त्रुटि मिलती है। तो मुझे url के अंत में क्या जोड़ने की आवश्यकता है ताकि एक वैध टोकन हो?
$passwordReset = "localhost/password/reset"
कोड से ऊपर कोड के अंत में पासवर्ड रीसेट करने के लिए मैं एक वैध टोकन कैसे जोड़ूं?
उत्तर:
उत्तर № 1 के लिए 1मेरा मानना है कि यूआरएल होना चाहिए
localhost/password/reset/{token}
उदाहरण के लिए:
localhost/password/reset/15966e3b4460a10a025d2506609e2857d89eea6eed77e898e41922873111afa4
इसे ठीक से काम करने के लिए सभी चार पासवर्ड मार्गों को सक्रिय होना चाहिए (यदि डिफ़ॉल्ट लार्वा का उपयोग करके)
Route::get("password/reset", "AuthForgotPasswordController@showLinkRequestForm");
Route::post("password/email", "AuthForgotPasswordController@sendResetLinkEmail");
Route::get("password/reset/{token}", "AuthResetPasswordController@showResetForm");
Route::post("password/reset", "AuthResetPasswordController@reset");
जवाब के लिए 0 № 2
यदि आप टोकन के साथ मेल भेजना चाहते हैं तो आप ऐसा कर सकते हैं और आप उपयोग कर सकते हैं
Route::post("/PasswordReset", "ResetPasswordController@GetToken");
फिर मेल द्वारा टोकन भेजें जहां आप टोकन बचा सकते हैंआप इसे सहेज भी नहीं सकते आप उपयोगकर्ता नाम का उपयोग कर सकते हैं वहाँ फ़ंक्शन है जिसे bcrypt () कहा जाता है; आप इसके द्वारा अपने उपयोगकर्ता नाम को बदल सकते हैं और यह आपको लंबे समय तक टोकन देगा, लेकिन मैं यह पसंद नहीं करता कि टोकन बदल न जाए
मैं उसे मेल करने के लिए नया पासवर्ड भेजना पसंद करता हूं और उसे लॉगिन करूं फिर पासवर्ड बदलूं आप str_random (8) का उपयोग कर सकते हैं; यह अक्षरों के साथ 8 यादृच्छिक संख्या उत्पन्न करेगा
आपकी मदद करना सबसे पहले आपको अपने मेल को कॉन्फ़िगर / कॉन्फ़िगर करना होगा और ड्राइवर के बाद इसे जोड़ें
"driver" => env("MAIL_DRIVER", "smtp"),
"stream" => [
"ssl" => [
"verify_peer" => false,
"verify_peer_name" => false,
"allow_self_signed" => true,
],
],
दूसरा आप पर जाएँ। इसे अपने होस्ट विवरण सूची में बदल दें
MAIL_DRIVER = smtp
MAIL_HOST = smtp.gmail.com
MAIL_PORT = 587
MAIL_USERNAME=yourgmailMail@gmail.com
MAIL_PASSWORD = YourPassword
MAIL_ENCRYPTION = TLS
तीसरा आपके कंट्रोलर के पास जाता है कि आप मेल में लिस्ट फंक्शन करेंगे। इसका नाम SendMassEmailController है यह पूरा नियंत्रक है
अंतिम बात मार्ग है web.php पर जाएं
Route::post("/SendMassEmail","SendMassEmailController@SendMassEmail");
अंत में गुड लक और हैव फन