Diskuze: Laravel: Systém na zmenu užívateľského mailu
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 9 zpráv z 9.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Rozmýšľam, či to nebude jednoduchšie urobiť tak, že sa na ten verifikačný mail vykašlem a užívateľ si ho bude musieť vyžiadať pri novom prihlásení. Takže ak by prebehli úspešne tie dva queries, tak by som usera len odhlásil a pri prihlásení by si musel vyžiadať nový mail. Akože nie je to bohviečo, ale je to môj osobnú "startup", takže sa z toho nepokakam, ak sa ten mail neodošle automaticky..
A jak vypadá ta metoda u usera
$user->sendEmailVerificationNotification() ??
když píšeš že ti nic neposílá, tak bych se podíval na tuto metodu.
A pak ještě bych ověřil ten systém odesílání emailů. Zda skutečně
běží a odesílá maily správně.
Ahoj, jak máš tvořenou registraci? Upravoval jsi ji? Nebo používáš
základní? A v ní ti to funguje?
Implementuje ti jinak model uživatele rozhraní MustVerifyEmail?
Model by měl vypadat nějak následovně:
class User extends Authenticatable implements MustVerifyEmail
{
// ...
}
Model vyzera presne tak, ako si napisal. Cele som to vygeneroval cez to vue
pomocou konzoly... v minulosti sa použival php artisan make:auth, v 6ke to
zmenili na dajaky vue, je mi to jedno, lebo všetko fungovalo ako malo, avšak
potreboval som tam zrobiť nejaké svoje veci (overenie účtu od admina a
pod.).
No ale to, že pri zmene e-mailu sa nedá len tak ľahko odoslať opäť
verifikačný mail, tak to ma laravel sklamal. Myslím, že je to častá
funkcionalita, kedy appka vyžaduje od užívateľov, aby mali funkčný
mail
Všetko ostatné, vstavané v laraveli funguje správne. Po registrácií usera odošle verifikačný mail a dá sa to potvrdiť. Ale keď odošlem verifikačný mail pomocou mojho modelu, až vtedy to nejde.
A to ani nehovorím o tom, že mi nefunguje odhlásenie usera, chcel som to urobiť tak, že po zmene e-mailu usera odhlási a redirectuje na login page. Zároveň mu odošle verifikačný mail, ktorým by verifikoval mail a mohol sa prihlásiť do appky.
Keď kód dojde na Auth::logout vyhodí mi dajake exceptions, že nevie nejaká moja funkcia vrátiť value, lebo do query posiela ID = null (zato, že som odhlásený). Lenže v skutočnosti by už vôbec nemala nastať táto situácie, po odhlásení by malo človeka hodiť na login page, kde sa tieto veci vôbec neriešia. No cele zle proste. :-/
Laravel ke svému odeslání ověřovacího emailu používá přesně
stejnou metodu, jako jsi ukazoval ty výše. Z tohoto důvodu mám podezření,
že je něco špatně s mail serverem na tvé straně. Popřípadě se zkus
podívat do logu, jestli neobsahuje nějaký error/warning
(storage/logs).
A Vue jsi taky nemusel používat. Stačilo se podívat na dokumentaci, kdy si
můžeš nechat vygenerovat jenom pohledy stejně, jako to šlo předtím 
Neposlal jsi, o jakou exception se jedná, ani její chybu, či callstack.
Každopádně Auth::logout() nepřijímá žádný parametr.
Teď taky jde o to, jak chceš přesměrovávat uživatele. V kontroleru ti
stačí vrátit RedirectResponse přes helper funkci
route(), což v tvém případě s $return = 1; zrovna
nevypadá tak, jak by mělo.
Zobrazeno 9 zpráv z 9.
