⊗ppPmAuAc 428 of 447 menu

Cabinet personal în PHP

Prin cabinet personal se înțelege locul unde utilizatorul își poate edita datele profilului său. Să facem pagina account.php, accesând care utilizatorul va vedea un formular pentru editarea datelor profilului său (cu excepția login-ului și parolei, acestea ar trebui procesate într-un mod special).

Atenție la faptul că id utilizatorului nu îl transmitem prin parametru GET - noi vom face astfel încât fiecare utilizator pe pagina account.php să vadă datele profilului său, și nu ale altcuiva.

Pentru aceasta, la autorizarea utilizatorului noi trebuie să înregistrăm în sesiune id acestui utilizator, astfel:

<?php if (password_verify($_POST['password'], $hash)) { $_SESSION['auth'] = true; $_SESSION['id'] = $user['id']; } ?>

Apoi, la accesarea paginii account.php noi vom face o interogare SELECT care va extrage din baza de date utilizatorul cu id din sesiune:

<?php $id = $_SESSION['id']; $query = "SELECT * FROM users WHERE id='$id'"; $res = mysqli_query($link, $query); $user = mysqli_fetch_assoc($res); ?>

Datele utilizatorului le vom afișa în formularul pentru editare. Să presupunem, de exemplu, că acestea sunt numele și prenumele utilizatorului:

<form action="" method="POST"> <input name="name" value="<?= $user['name'] ?>"> <input name="surname" value="<?= $user['surname'] ?>"> <input type="submit" name="submit"> </form>

După apăsarea butonului de trimitere a formularului noi va trebui să facem o interogare pentru actualizarea utilizatorului:

<?php if (!empty($_POST['submit'])) { $name = $_POST['name']; $surname = $_POST['surname']; $query = "UPDATE users SET name='$name', surname='$surname' WHERE id=$id"; mysqli_query($link, $query); } ?>

Implementați cabinetul personal descris.

Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge