diff --git a/assets/css/biodata.css b/assets/css/biodata.css new file mode 100644 index 0000000000000000000000000000000000000000..e5bfd8e52ab9471622a1dc1a4699d9090f3477ea --- /dev/null +++ b/assets/css/biodata.css @@ -0,0 +1,45 @@ +.header { + background-color: rgb(20,50,180); + display: flex; + flex-direction: column; + align-items: center; +} + +.header > div { + color : blanchedalmond; + /* width: 100px; */ + text-align: center; + line-height: 75px; + font-size: 30px; +} + +.content { + font-size: 30px; + color: orangered; + font-family: 'Times New Roman'; +} + +ul { + list-style-position: inside; +} + +div.edit{ + align-self:flex-end; +} + +image.profile { + height: 50px; + width: 50px; + border-radius: 50%; +} + +img.edits { + border: 1px solid #ddd; + border-radius: 4px; + padding: 5px; + width: 150px; +} + +img.edits:hover { + box-shadow: 0 0 2px 1px rgba(0, 140, 186, 0.5); +} diff --git a/assets/css/edit_biodata.css b/assets/css/edit_biodata.css new file mode 100644 index 0000000000000000000000000000000000000000..0834d4da7b830bed2d5750b51fe95756c9b66cca --- /dev/null +++ b/assets/css/edit_biodata.css @@ -0,0 +1,46 @@ +h1 { + color: coral; +} + +img { + width: 100px; + height: 100px; +} + +button.back { + background-color: beige; + border: maroon 1px solid; + border-style: solid; + color: maroon; + text-align: center; + font-size: 20px; + cursor: pointer; + padding: 15px 25px; +} + +button.back:hover { + background-color: maroon; + border: whitesmoke 1px solid; + color: linen; + border-style: hidden; +} + +button.save { + background-color: royalblue; + border: none; + color: navajowhite; + text-align: center; + font-size: 20px; + cursor: pointer; + padding: 15px 25px; +} + +button.save:hover { + background-color: whitesmoke; + border: navy; + color: royalblue; +} + +textarea { + resize: none; +} \ No newline at end of file diff --git a/assets/js/edit.js b/assets/js/edit.js new file mode 100644 index 0000000000000000000000000000000000000000..f5ebe91d0820c9770b503f5fdeb0d610d46dd5cd --- /dev/null +++ b/assets/js/edit.js @@ -0,0 +1,51 @@ +window.onload = function() { + // Add validator for the fields below. + let name = document.getElementById('field_name'); + let address = document.getElementById('field_address'); + let phone = document.getElementById('field_phone'); + name.onkeyup = function(e) { + if (this.value !== "") { + name_ok = true; + } else { + name_ok = false; + } + } + address.onkeyup = function(e) { + if (this.value !== "") { + address_ok = true; + } else { + address_ok = false; + } + } + phone.onkeyup = function(e) { + if (this.value !== "") { + phone_ok = true; + } else { + phone_ok = false; + } + } + // Whether or not a field is okay. + var name_ok = false; + var address_ok = false; + var phone_ok = false; + // On save button clicked. + let button = document.getElementById('save_button'); + button.addEventListener("click", (e) => { + // let name = document.getElementById('field_name'); + // if (!name_ok) { + // name.focus(); + // return; + // } + // let address = document.getElementById('field_address'); + // if (!address_ok) { + // address.focus(); + // return; + // } + // let phone = document.getElementById('field_phone'); + // if (!phone_ok) { + // phone.focus(); + // return; + // } + document.getElementById("edit_form").submit(); + }); +} \ No newline at end of file diff --git a/controller/BiodataController.php b/controller/BiodataController.php new file mode 100644 index 0000000000000000000000000000000000000000..0269f2fe583a89d03789466054ac8e7edda57d3b --- /dev/null +++ b/controller/BiodataController.php @@ -0,0 +1,33 @@ +<?php +namespace JLAS\Book\Controller; +use \JLAS\Book\Controller\BaseController; +use \JLAS\Book\Model as Model; +use \JLAS\Book\Entity as Entity; + +class BiodataController extends BaseController { + + /** + * Get the data needed for this controller. + * @return array data passed to the view. + */ + protected function run($params) { + $username = $this->getUsername(); + if (isset($username)) { + $model_biodata = new Model\BiodataModel(); + $biodata = $model_biodata->findByID($username); + $this->setResponse(200, "Success"); + return $biodata->asArray(); + + // $this->setResponse(401, "Not logged in"); + // return $params; + + } + else { + $this->setResponse(400); + return $params; + } + } + +} + +?> \ No newline at end of file diff --git a/controller/EditController.php b/controller/EditController.php new file mode 100644 index 0000000000000000000000000000000000000000..515f2c8ddde3d33c114e56bc05c2dbb9e0f78088 --- /dev/null +++ b/controller/EditController.php @@ -0,0 +1,80 @@ +<?php +namespace JLAS\Book\Controller; +use \JLAS\Book\Controller\BaseController; +use \JLAS\Book\Model as Model; +use \JLAS\Book\Entity as Entity; + +class EditController extends BaseController { + + /** + * Get the data needed for this controller. + * @return array data passed to the view. + */ + protected function run($params) { + $username = $this->getUsername(); + if (isset($username)) { + $model_account = new Model\AccountModel(); + $model_biodata = new Model\BiodataModel(); + $user = $model_account->findByID($username); + if (isset($this->params["data"]["name"])) { + // User available. + $biodata = $model_biodata->findByID($username); + $arr_bio = $biodata->asArray(); + $biodatas = new Entity\GenericEntity(array( + "username" => $username, + "name" => $this->getArg('name'), + "email" => $arr_bio['email'], + "address" => $this->getArg('address'), + "phone" => $this->getArg('phone'), + )); + // $result = $model_biodata->update($biodatas); + + if ($model_biodata->update($biodatas)) { + // return to history page + header("Location: /book/profile"); + exit; + } + + // $model_token = new Model\TokenModel(); + // $token = $model_token->findByID($this->getArg('username')); + + // if (isset($token)) { + // // Update current token. + // $token->token = LoginController::generateAccessToken($user->username); + // $token->expiry = date('Y-m-d H:i:s', strtotime(date('Y-m-d H:i:s') . ' + ' . LoginController::$TokenDuration)); + // $model_token->update($token); + // } else { + // // Create a new token. + // $token = new Entity\TokenEntity(array( + // "username" => $user->username, + // "access-token" => LoginController::generateAccessToken($user->username), + // "expiry" => date('Y-m-d H:i:s', strtotime(date('Y-m-d H:i:s') . ' + ' . LoginController::$TokenDuration)) + // )); + // $model_token->create($token); + // } + $this->setResponse(200, "User $username updated"); + return $biodatas->asArray(); + // return $params; + } else { + $biodata = $model_biodata->findByID($username); + $arr_bio = $biodata->asArray(); + $biodatas = new Entity\GenericEntity(array( + "username" => $username, + "name" => $arr_bio['name'], + "email" => $arr_bio['email'], + "address" => $arr_bio['address'], + "phone" => $arr_bio['phone'], + )); + $this->setResponse(200, "Please edit"); + return $biodatas->asArray(); + // return $params; + } + } else { + $this->setResponse(400, "Please log in first"); + return $params; + } + } + +} + +?> \ No newline at end of file diff --git a/model/BiodataModel.php b/model/BiodataModel.php index c8f8c2da669ac917b34969d2b347f2e01856aec7..11f1c7163c23e43b7de78091be05154da1e701c5 100644 --- a/model/BiodataModel.php +++ b/model/BiodataModel.php @@ -65,7 +65,7 @@ class BiodataModel extends BaseModel { */ public function update($entity) { $result = $this->query( - "UPDATE $this->table SET `name`=:name, `email`=:email, `address`=:address, `phone`:=phone WHERE `username`=:username", + "UPDATE $this->table SET `name`=:name, `email`=:email, `address`=:address, `phone`=:phone WHERE `username`=:username", array( ":username" => $entity->username, ":name" => $entity->name, diff --git a/routing/profile.php b/routing/profile.php new file mode 100644 index 0000000000000000000000000000000000000000..c4464b410a314138990da962cdab666cdce8df3a --- /dev/null +++ b/routing/profile.php @@ -0,0 +1,8 @@ +<?php +namespace JLAS\Book; +use SuPHP\Routing as Routing; + +Routing\addRoute("^profile$", "GET", ["biodata.php"], "BiodataController"); +Routing\addRoute("^edit$", "GET", ["edit_biodata.php"], "EditController"); +Routing\addRoute("^edit$", "POST", ["edit_biodata.php"], "EditController"); +?> \ No newline at end of file diff --git a/view/biodata.php b/view/biodata.php new file mode 100644 index 0000000000000000000000000000000000000000..7e19c903aa7e4c77b8d95549ef05580e4846daf7 --- /dev/null +++ b/view/biodata.php @@ -0,0 +1,44 @@ +<!DOCTYPE html> +<?php + var_dump($response); + echo "<br>"; + var_dump($data); +?> +<html> +<head> + <meta charset="utf-8" /> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <title>Profile</title> + <link rel="stylesheet" href="assets/css/biodata.css"> +</head> +<body> + +<div class="header"> + <div class="edit"><a href="edit"> <img class="edits" alt="Edit button" src="https://us.123rf.com/450wm/briang77/briang771512/briang77151201745/49670730-pencil-vector-icon.jpg?ver=6"> </a></div> + <div><image class="profile" src="img/tayo.jpg" alt="Profile picture"> </div> + <div><?php echo $data["name"] ?></div> +</div> + +<h1 class="content"> My profile </h1> +<table> + <tr> + <td>Username</td> + <td><?php echo $data["username"] ?></td> + </tr> + <tr> + <td>Email </td> + <td><?php echo $data["email"] ?></td> + </tr> + <tr> + <td>Address </td> + <td><?php echo $data["address"] ?></textarea></td> + </tr> + <tr> + <td>Phone Number </td> + <td><?php echo $data["phone"] ?></td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/view/edit_biodata.php b/view/edit_biodata.php new file mode 100644 index 0000000000000000000000000000000000000000..d82367bea0be08f255e2ceaf7782ad31e35ef222 --- /dev/null +++ b/view/edit_biodata.php @@ -0,0 +1,56 @@ +<!DOCTYPE html> +<?php + var_dump($response); + echo "<br>"; + var_dump($data); +?> +<html> +<head> + <meta charset="utf-8" /> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <title>Edit Profile</title> + <link rel="stylesheet" href="assets/css/edit_biodata.css"> + <script src="assets/js/edit.js"></script> + <!-- <script src="assets/js/bootstrap.js"></script> --> +</head> +<body> + +<div> + <table> + <thead> + <tr> + <th colspan="3"><span>Edit Profile</span></th> + </tr> + </thead> + <body> + <form method="POST" action="" id="edit_form"> + <tr> + <td><img src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBw8QDxIQEBAQDxIQEA8QEBYQDQ8NDw4QFRUWFhURFhYYHSggGBolHRUVITEhJSkrLi4uFx8zODMtNygtLisBCgoKDg0OGhAQGy0mICUtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLf/AABEIAOEA4QMBEQACEQEDEQH/xAAcAAEAAgMBAQEAAAAAAAAAAAAAAQQCBQYDBwj/xAA7EAACAQIDBAYIBAUFAAAAAAAAAQIDEQQFIRIxQXEGMlFhkaEHEyJSYoGx0UKSweEjM3KCohQVU3Pw/8QAGwEBAAIDAQEAAAAAAAAAAAAAAAQFAQIDBgf/xAAwEQEAAgEEAgAFAwMDBQAAAAAAAQIDBAURMRIhEzJBUWEiQoFScZEVM6EGFDSx0f/aAAwDAQACEQMRAD8A+4gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABDMBcyIuYE3AGRIAAAAAAAAAAAAAAAAAAAAAAABDZiZ4jmSPanVzKlG621JrhH2iBn3LT4fmt7/AA7VwXt9FOpnL/DH8z+xU5t/+lK/5d66T+qVeeaVnxS5RX6kDJvWqt1MQ6xpaPN46r78vJEedy1X9bf4GP7Mf9ZU9+Xia/6jqf65Z+Dj+yVjavvy8mbxuepj98sfAx/Z7QzWqt7T5xX6EjFvepr3xLSdLWVmlnPvR/K7+TLDD/1BXrJX/DjbST+1doY6nPdJX7Hoy2w7hp8vVvaPbFevcLNyb25pMgAAAAAAAAAAAAAAAAARcDX5hm1Olp15di4c3wK3V7liweueZScOmvk/s5/E5hVrOzezHsjpH59p5nVblmz/AF4hZ002PFHMx7ZQgkrIrZkmeWRjmWAAAAAAAECJ46OOe1nD46pDc7rslqix026Z8HU8w4X09bNthMxhPTqy7Hx5M9NpN0xZ/XUoOTBai9cs4cUmQAAAAAAAAAAAAABhOaSu9EtXfSxra8VjmemYiZ9OdzPOnK8aTtHc5cZcuxHmdfu825pi6+600+i4/Vdpkm++5QTaZnmVj6rC7Sp7K+ppM8o1rcvQw1AAAAAAAAAACDMTx0NlgczcbRnquD4rmeg27d5rPhmn190PNpvrVuoyT1WqPUVtFo5hAn16ZGwAAAAAAAAAAADCrUUU23ZLVt8DS94pHlM+mYiZniHKZrmbrPZjdU18nLvf2PI7juVs8zSvqsf8rjS6WMccz21xUpselvDU7avju5Gsy45Lc+nuauQAAAAAAAAAAAAAC5gMc6bs9Yvf8Pei323crYLeNp/SjZsEW9x238JppNO6e49jS9b18q9SreJjtkbgAAAAAAAAAhmJkctneYupLYg/Yi/zP7Hk903Cctvh06W+j03jHlbtqylWDOjC7+pifTW9uIXTRFSAAAAAAABXxOOo0v5lSFP+qaidK4r26hniUYbH0av8urCf9M1IWw3p80HCwc2EgAAED+42GV43YexJ+y93wv7F5tO4zit8O/U9fhE1GHn9UN6meuiefavSZAAAAAAAENgajpBj9iGxF+1Pf3R4+JS7vrfhU8K9ym6PD528p6hzJ5KV0gC5h4WXezSZRsluZexhoAAAAAAA5Lp70oeCpqnSt66qns31VOPGViz27RRmnyt1DpSnL5DisTUqyc6k5VJPVuTuelpStI4rHCRERBhq86clKnKVOS3OL2WZtWLerExy+t9AOlLxkHSrNeuppO+71kN21z7TzW46P4M+dOpR714dgVbmAAAEDklvcoxW1HZe+Pmj2Oz6z4uPwt3Ct1GPxtzHUtiXSMAAAAAAAwrTUYuT0STb5I0yXilZtLMRzPDicXiHUqSm+L07lwR4TV6ic+Wby9BgxxjpFXkRnZlSjdpGJa3niF40RUgAAAAAAAfF/STUk8xqJ/hjTUeVr/qer22IjBHCTjj9Llye3AOl9HdSUcypbP4lOMuVr/oiFuMROnnlpk6fazySMAAAAwPTDVnCakuG/vXFEvR6mcGaLx/Lnlp514dNTldJrc9Ue+peL18o6lUzHE8MzdgAAAAADTdJMTs01Bb5vX+lf+RSbzqPDD4R3Kbocflfmfo5k8muoSBYwkd7+RrLjllZNXEAgAZ4Z4DDCQAAD5z6UcgnJxxlOLlsx2KqSu0lukXu1amIj4Vv4dsduPT5qXrsAfRvRdkE1N4ypFxWy4UbrV33y8ik3XVR4/Dj+XHJaH0ooHEAAAAEAbzJa94bL3xfkz2Gyan4mHwnuv8A6Vupp425bIu0YAAAAEMDkc8r7deXZC0V8t/meM3bN8TUTEdR6Xmip44/7qBVpYBdoK0UaSjXnmXoYaAHzvpn07lTnLD4RpOOlSpa9n7sfuXuh22LR55Pr1DtTG4GrnGKlLalia7f/dNfRlxGDFEcRWP8OvjDoOjnTzE4eajXk69K62trWpBdqfHkQ9TtuPJHNI4lpanL65hMTCrTjUg9qM0pRa4pnmb0mlprPcOExw9jRgAxlFNWaunvvqmZi01nmGXLZn0AwNaTmoyoye/1UtmLfLcWOLdM1I47bxkmEZb6P8BRkpSjKs1u9ZK8fy7hl3XNeOI9E5LS6qEUkkkkloklZIrpmZnmXNkYAAAAATCLbsk2+7U6Y8V8k8Vjlra1a9y2+V4KcJbUrK6tbez0+07fmwW87+vwgajNW8cQ2qPQIoAAAAMKkrJvsVzTJbxrMsxHMw4WcrybfFt+J8/zW8slp/L0eOPGsQg5txGCemwSNESe0hhrukGLdHCV6q3wpTa52O+mp55Yq2rHMvgLberd29W3vb7T2ceukpAAyPrXopxcp4OdNu/qqrjHui0nbzZ5vd6RGWJj6uGWPbtiocgAAAAAAAABlSpSk7RTb7kdsOny5p4pHLW1619zLZYfKXvm/lH7l/pdj6nNP8IeTV/0tpRoRgrRikX+HT4sMcUjhEtabe5elju1SAAAAAFTM5Wo1H8EvoRdZbxwXn8OmGOclY/LjDwT0cAEw3rmjEsW6bA0RACpm2E9fQq0v+SnKPijtgv8PJFmYfn/ABOHnSnKnNbMoScZJ6WaPZ1tFqxaOkuPft5GQDL7N6Ocrlh8EnNWlWk6jT3pNJRXgjy+55oyZvX0Rsk8y6orXMAAAAEADA9aGHnPqpvyS+ZLwaPNnnikOd8ta9tnhsoS1m79y0R6DTbFSvvL7Q8mqmemypUlFWSSXcrF7jxUxxxWOIRZmZ7Z2OjCQAAAAAAAKGdv+BU5JeaIG5zxpru+l/3Ycgzw70ABlS6y5oxLW3S8aIqQAHL9K+hlHG/xIv1Va1tpK6n3SXHmWOj3C2D9M+6ulLzDiKno4x6lZOjJdu215WLaN1wTHPt0jJDo+jfo7hRmquJmqsou8YRVqafBu+8hardZtHjT1DS2Tnp3aRSuSQAAABAOVjD4Sc+qtO16Im6bb8+ef0x6+7jfPSnbaYbKYLWT2n4RPRaXZcWP3k9yh5NTa3TYRgkrLRdysXNaVrHFY4R5nntkbsAAAAAAAAAABr88X8CpyX1RX7p/4t3fS/7sOQPEPQJAyp9Zc0YlrfpfNEUAAAAAAAAAB/Y67WcPgKk9y2V2y0LLS7Vnz++OI/Lhk1FatphsshHf7b793gej0u0YcPu3ufyhX1Frdel5RLSKxEcQ4MjYAAAAAAAAAAAAAqZrDao1F8D8lcia2vlgvH4dcE8ZKy4w8G9FAAT1QYnpsDmiJAAAAAAARmKzPUMTMQuYbLak9Wtld+/wLbS7Pmy+7eoR8mprXptcNl1OGttp9r18Ow9Fptsw4Oo5n7yhXz2utpFjw5JMgAAAAAAAAAAAAAABhVhdNdqaOeSvlWYZieJiXCzVm12NrwPn+WvjeY/MvSUnmsSg0bAF6lK8VyOcoto4lmGoAAAIpt2Su+7Vm1aWvPFY5YmYjtfw+VTl1vYXjL9i60uyZb+8nqEW+qrHytrhsFCG5a9r1Z6LT6DBgj9MId8t79rCRMc0mQAAAAAAAAAAAAAAAAAIYHHZxR2K81wk9tfP97niN0xfD1FvtPte6O/lihTK9KALGElvXzRraHHLH1WTVxAAEwtf2r2420Z0xTSLR59Nbc8em6wVeglaNov4tG/met0Op0URxTiJ/Kuy0yz83tsUXETEx6R0mwAAAAAAAAAAAAAAAAAAAAA0XSbD3jGovw+zLk93n9Sg3vT+VIyR9FhoMnFppP1c8eXW8AEwlZp9gYtHML8ZXVzmizHEpDAAAAetHEzh1ZNd29eBLwa7Phn9Nv8A453xUt2v0c3e6cb98fsXWn376ZY/mEW2kn9rYUMZTnukr9j0ZdYNdgzfLZFtitXuFi5LaJMgAAAAAAAAAAAAAAAAAeWIoqcZRe6SaZyzYq5KTS3Utq2mtomHFYmg6c5QlvT8VwZ4TU4LYck0s9DiyRkrFoeZwdAD3w1S2j+RrMOWSv1WTVwSAAAAAAzEzHRMcrFDHVIbpNrsl7SJ+Dc9Rh/dz/dwvp6WX6GcLdOLXetUXWn32lvWSOEa+ltHTYUsRCfVkn89S5w6rFl91lGtS1e3qmd2qTIAAAAAAAAAAAAAAMDUZ9l3rI7cV7UVr8UezmU266H41POvcJmk1Hw7eM9S5hHkZjhd88gAC1Qq30e/6mkwj3px7exhzSAAAAAEAAJT+RtW9qzzEsTWJ7W6GZVI8dpfFr5lnp94z4p4meY/KPfTVt16bChm0H1rx80XeDe8F/V/Uo19LevS9TqqSvFp8nctseamSOazyjzWY7hmjqwkAAAAAAAAAAAAIZiRzee5Zst1YLR9dLg/e5Hmt127ifi449fVZ6PVfss0yPPLQAAWaNe+j3/U0mHC9Ps9zDkASAAAAAAABAGUJuLum0+52OmPNfHPNZ4azSJ7XqOa1I9a0l4Mt9PveanzxzH/ACjX0tZ6bDD5nTlvey+/d4l3g3fT5frxP5Rb4L1XU7lpExPTikyAAAAAAAAAABjKJrMM8uZzjKnTbnTV4cV7n7Hlty234czkxx6Wuk1cT+izUIo1ikCAPWnWa70azDnbHz0tQqJ7jXhxmswyDVIAAAAAAAAAOBfy/L3P2pq0eHxfsXm27XbJMXydfZEz6jj9MN5FWPW1jiOI6V7I2AAAAAAAAAAAAQ0YmI44kaDNMk3zpc3Hd+X7Hntw2jmZvhj+Fjptbx+m/wDlopRadmmmt6as0ecvSaT42jha1tFo5hBqyAEDt6wrtd5jhznHEvaGIi9+hr4uc45h6p3MNOEhgAAAACMW3ZK7fYb0x2vMVrHMsTaK+5bfA5Xb2qmr4R4Lmem0GzxTi+bv7IGbU8+qtqkehiOI4hESZ4AAAAAAAAAAAAAAEWAqY7LqdXrKz4SWkkQtToceoji0fy7Ys98c8w5/GZLVhrFesj3db5r7HnNTtObF7p7haYtdS3q3prXpo9H36NFVas1ni0cJkWiekXNWUjgACbW7QMcRL0VeS435mJhrOOss1in2GPFpOJksUuxjxY+EzhWTdkm32JXZtTFa88VjlpavjHMy2eFyuctZewv8vDgXGl2TJk95PUf8oWTVRHqrbYbBwpr2Vr2vVs9HptFiwRxWEK+S1+1lExoAAAAAAAAAAAAAAAAAACGB4YjB06nXgn8tfEj5dNiy/PWJb0yWp8stbW6PU31ZSj/kisybHhn5OYS66/JHftTqdHqi6s4y5pxIN9iyfttCRXcK/WHg8kxHuxf96I87NqY+kf5dI12NH+y4j3F+eJr/AKPqfsz/AN9i+7JZJiPdiv70bRsupn6QxOuxPWn0fqvrSiuV5HemxZZ+a0Oc7hX6QuUOj1NazlKXL2UTsOx4q+7zyj3195+WOG0oYWFNWhFR5LXxLXFp8eKOKQiXyWv7tL2SO3HDRJkAAAAAAAAAAAAAAAAAAAAAAAEWAmwEWAmwEWAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf/Z" alt="Profile Picture"> </td> + <td> + Update profile picture <br> + <input type="text" name="file_address"> <input type="file" name="new_profile" value="Browse ..."> + </td> + </tr> + <tr> + <td><label>Name </label></td> + <td><input type="text" id="field_name" name="name" value="<?php echo $data["name"] ?>"> </td> + </tr> + <tr> + <td>Address </td> + <td><textarea id="field_address" name="address" cols="30" rows="5"><?php echo $data["address"] ?></textarea></td> + </tr> + <tr> + <td>Phone Number </td> + <td><input type="text" id="field_phone" name="phone" maxlength="12" value="<?php echo $data["phone"] ?>"> </td> + </tr> + </form> + <tr> + <td><button class="back" onclick="window.location.href = 'profile';">Back</button></td> + <td align="right"><button class="save" id="save_button">Save </button></td> + </tr> + </table> +</div> + +</body> +</html> \ No newline at end of file