inregistrare-utilizator-imposibila-dupa-update-magento-1-9-2-2 Bianca Ionel

Înregistrare utilizator imposibilă după update Magento 1.9.2.2

Înregistrare utilizator imposibilă după update Magento 1.9.2.2

După cum puteți observa majoritatea tutorialelor din această perioadă sunt despre Magento și despre erorile de care m-am lovit de când am făcut un update la Magento 1.9.2.2. Despre ce este vorba în acest articol?

Ei bine, după un update la versiunea Magento Community 1.9.2.2 și o testare intensă a tuturor funcționalităților am descoperit imposibilitatea de a îmi crea un cont nou de utilizator. Completam toate câmpurile și în momentul în care apăsam pe butonul de „Creare Cont” se făcea un refresh la pagină și cam atât. Am căutat erori în log, nu am găsit nimic, drept urmare a început să caut ce modificări s-au făcut de la versiunea de Magento de la care am plecat înainte de update (1.6.2) până în prezent strict pe partea de înregistrare user.

Așadar, am aflat că de la versiunea 1.7, Magento făcut mici modificări prin fișierul de înregistrare utilizator a introdus form keys, cu scopul de a evita atacurile de tip CSRF (Cross-site request forgery), peste tot pe unde există formulare Sincer, nu pot înțelege de ce ar fi nevoie pe un formular de înregistrare o astfel de măsură de securitate, dar sigur nu e făcută doar pentru câteva rânduri de cod în plus.

În general când se face un request serverul îl consideră ca fiind din partea utilizatorului curent logat. Prin adăugarea CSRF-ului se mai face o verificare asupra autenticitătii utilizatorului. Pe partea de server se generează un string random salvat în sesiune cu un timp de valabilitate. Când se face un request către server se verifică dacă câmpul există în request, dacă valoarea din request corespunde cu cea din sesiune și dacă timpul nu a expirat.

Soluția problemei este următorul rând de cod de mai jos 🙂

<input type="hidden" name="form_key" value="<?php echo Mage::getSingleton('core/session')->getFormKey() ?>" />

Această linie de cod lipsește din formularul de înregistrare dupa update și trebuie adăugat manual. Unde se află fisierul acestui formular de înregistrare? Ca să nu o luați pe ghicite, activați Path Hints și aflați care este locația fișierului. La mine, fișierul se afla în tema site-ului app/design/frontend/PacketTema/TemaMea/template/persistent/customer/form/register.phtml, modificarea făcută o puteți observa mai jos.

Inregistrare utilizator imposibilă după update Magento 1.9.2.2

Există posibilitatea să folosiți module speciale pentru conturile de utilizatori, drept urmare, fișierul acesta se va găsi într-o formă asemănătoare în folderul modulului respectiv, dar dacă folosiți Path Hints, cu siguranță nu o să aveți probleme în acest sens și o să găsiți fișierul corespunzător.

La final nu uitați de clear cache și apoi puteți relua testările, dar cu siguranță o să puteți crea un cont de utilizator.

Dacă articolul Înregistrare utilizator imposibilă după update Magento 1.9.2.2 ți-a fost de folos, nu uita să îi dai un share și eventual să îmi spui dacă această soluție ți-a fost sau nu de ajutor.

Alte articole despre Magento care te-ar putea interesa:


Alătură-te și tu celor 4000 de abonați la blog

Introdu adresa de email pentru a te abona la acest blog și vei primi notificări prin email când vor fi publicate articole noi.

1 thought on “Înregistrare utilizator imposibilă după update Magento 1.9.2.2”

  1. Pingback: Magento Connect Manager 404 Page Not Found Error | Acorduri din Suflet | Bianca Ionel

Lasă un răspuns