From a732774d8941139d8e1339500b0c7652d5524bd3 Mon Sep 17 00:00:00 2001 From: girvandip <girvandip@gmail.com> Date: Fri, 6 Oct 2017 20:37:52 +0700 Subject: [PATCH] edit-profile able to check compatible image type --- controller/edit-profile.php | 40 ++++++++-------- js/edit-profile.js | 8 +++- view/edit-profile.php | 96 ++++++++++++++++++------------------- 3 files changed, 75 insertions(+), 69 deletions(-) diff --git a/controller/edit-profile.php b/controller/edit-profile.php index da8d0868..d68da94d 100644 --- a/controller/edit-profile.php +++ b/controller/edit-profile.php @@ -43,29 +43,29 @@ if(isset($_POST["submit"])) { $phone = $_POST['phone']; } if(file_exists($_FILES["image-file"]["tmp_name"])) { - $targetDir = "../img/"; - $targetFile = $targetDir . basename($_FILES["image-file"]["name"]); - $uploadOK = 1; - $imageFileType = pathinfo($targetFile,PATHINFO_EXTENSION); - $check = getimagesize($_FILES["image-file"]["tmp_name"]); - if($check !== false) { + $targetDir = "../img/"; + $targetFile = $targetDir . basename($_FILES["image-file"]["name"]); $uploadOK = 1; - } else { - $uploadOK = 0; - } - if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg" - && $imageFileType != "gif" ) { - $uploadOk = 0; - } - if($uploadOK == 1) { - if (move_uploaded_file($_FILES["image-file"]["tmp_name"], $targetFile)) { - $image = basename($_FILES["image-file"]["name"]); + $imageFileType = pathinfo($targetFile,PATHINFO_EXTENSION); + $check = getimagesize($_FILES["image-file"]["tmp_name"]); + if($check !== false) { + $uploadOK = 1; + } else { + $uploadOK = 0; + } + if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg" + && $imageFileType != "gif" ) { + $uploadOk = 0; + } + if($uploadOK == 1) { + if (move_uploaded_file($_FILES["image-file"]["tmp_name"], $targetFile)) { + $image = basename($_FILES["image-file"]["name"]); + } + } + if($uploadOK == 0) { + echo 'no'; } } - if($uploadOK == 0) { - echo 'no'; - } - } if(isset($_POST['driver'])) { $isDriver = 1; } else { diff --git a/js/edit-profile.js b/js/edit-profile.js index ccd524e7..58e4f13f 100644 --- a/js/edit-profile.js +++ b/js/edit-profile.js @@ -24,7 +24,7 @@ function getUserProfile() { function checkAllInput() { var name = document.editForm["name"]; var phone = document.editForm["phone"]; - + var image = document.editForm["image-file"]; //Check name if(name.value == "") { alert("Your name field must be filled!"); @@ -46,5 +46,11 @@ function checkAllInput() { alert("Phone number must be valid"); return false; } + //Check image + var regexImage = /\.(jpe?g|png|gif)$/; + if(regexImage.test(image.value) == false) { + alert("Please upload image typed files only (.jpg, .jpeg, .png, .gif)!"); + return false; + } } diff --git a/view/edit-profile.php b/view/edit-profile.php index ffc32ccc..ee7c76f1 100644 --- a/view/edit-profile.php +++ b/view/edit-profile.php @@ -1,53 +1,53 @@ <html> <head> - <title>Edit-profile</title> - <link href="../css/primary.css" type="text/css" rel="stylesheet"> - <link href="../css/edit-profile.css" type="text/css" rel="stylesheet"> - <script> - var sessionid = "<?php echo $_GET['id'];?>"; - </script> - <script src="../js/edit-profile.js"></script> -</head> -<body onload="getUserProfile();" onreset="getUserProfile()" onpageshow="getUserProfile()"> -<div class="container"> - <h1>EDIT PROFILE INFORMATION</h1> - <form enctype="multipart/form-data" action="../controller/edit-profile.php?id=<?php echo $_GET['id']?>" - method="post" id="form" name="editForm" onsubmit="return checkAllInput()"> - <input type="hidden" id="userid" value="<?php echo $_GET['id'];?>"> - <div class="edit-image"> - <div class="div-profile-image"> - <img class="profile-image" id="image"> - </div> - <div class="browse-image"> - <label>Update profile picture</label> - <br /> - <br /> - <input type="file" name="image-file" value="browse.." id="image-file" onsubmit=""> - </div> - </div> - <div> - <div class="edit-data"> - <label class="form-label">Your Name</label> - <input type="text" name="name" id="name"> - </div> - <div class="edit-data"> - <label class="form-label">Phone</label> - <input type="text" name="phone" id="phone"> - </div> - <div class="edit-data"> - <label class="form-label">Status Driver</label> - <div class="checkbox"> - <label class="switch"> - <input type="checkbox" name="driver" id="driver"> - <span class="slider"></span> - </label> - </div> - </div> - </div> - <div> - <div> - <a class="back" href="dashboard.php?id=<?php echo $_GET['id'];?>">BACK</a> - <input type="submit" value="SAVE" class="save" name="submit"> + <title>Edit-profile</title> + <link href="../css/primary.css" type="text/css" rel="stylesheet"> + <link href="../css/edit-profile.css" type="text/css" rel="stylesheet"> + <script> + var sessionid = "<?php echo $_GET['id'];?>"; + </script> + <script src="../js/edit-profile.js"></script> + </head> + <body onload="getUserProfile();" onreset="getUserProfile()" onpageshow="getUserProfile()"> + <div class="container"> + <h1>EDIT PROFILE INFORMATION</h1> + <form enctype="multipart/form-data" action="../controller/edit-profile.php?id=<?php echo $_GET['id']?>" + method="post" id="form" name="editForm" onsubmit="return checkAllInput()"> + <input type="hidden" id="userid" value="<?php echo $_GET['id'];?>"> + <div class="edit-image"> + <div class="div-profile-image"> + <img class="profile-image" id="image"> + </div> + <div class="browse-image"> + <label>Update profile picture</label> + <br /> + <br /> + <input type="file" name="image-file" value="browse.." id="image-file"> + </div> + </div> + <div> + <div class="edit-data"> + <label class="form-label">Your Name</label> + <input type="text" name="name" id="name"> + </div> + <div class="edit-data"> + <label class="form-label">Phone</label> + <input type="text" name="phone" id="phone"> + </div> + <div class="edit-data"> + <label class="form-label">Status Driver</label> + <div class="checkbox"> + <label class="switch"> + <input type="checkbox" name="driver" id="driver"> + <span class="slider"></span> + </label> + </div> + </div> + </div> + <div> + <div> + <a class="back" href="dashboard.php?id=<?php echo $_GET['id'];?>">BACK</a> + <input type="submit" value="SAVE" class="save" name="submit"> </div> </div> </form> -- GitLab