Add the main admin, dosen, mahasiswa, API, and service code needed to run the core legacy application with configurable upload storage.
127 lines
5.3 KiB
PHP
127 lines
5.3 KiB
PHP
<?php
|
|
|
|
session_start();
|
|
if ($_POST) {
|
|
include '../../../inc/helper.php';
|
|
include '../../../inc/konfigurasi.php';
|
|
include '../../../inc/db.pdo.class.php';
|
|
|
|
$db = new dB($dbsetting);
|
|
|
|
switch ($_POST['act']) {
|
|
case 'updatemyprofile':
|
|
$id = $_POST['mhs'];
|
|
if($_POST['noHP'] == $_POST['noHPOrtu']){
|
|
echo json_encode(['result' => false, 'msg' => 'Nomor HP Mahasiswa tidak boleh sama dengan orang tua']);
|
|
exit;
|
|
}
|
|
|
|
$noHP = $_POST['noHP'];
|
|
$noHPOrtu = $_POST['noHPOrtu'];
|
|
|
|
$e = "SELECT * FROM tbmhs WHERE idmhs != '$id' AND (noHP = '$noHP' OR noHPOrtu = '$noHP' OR noHP = '$noHPOrtu' OR noHPOrtu = '$noHPOrtu')";
|
|
$db->runQuery($e);
|
|
if ($db->dbRows() > 0) {
|
|
echo json_encode(['result' => false, 'msg' => 'Nomor HP Mahasiswa atau Orang Tua Telah digunakan oleh orang lain']);
|
|
exit;
|
|
}
|
|
|
|
if (ctype_digit($id)) {
|
|
if (!isset($_FILES['foto']) || !is_uploaded_file($_FILES['foto']['tmp_name'])) {
|
|
if ($_POST['password'] != '') {
|
|
$pass = "password='".md5(trim($_POST['password']))."', ";
|
|
} else {
|
|
$pass = '';
|
|
}
|
|
$msg = 'Profil telah disimpan.';
|
|
|
|
$queryupdate = "UPDATE tbmhs
|
|
SET
|
|
nmLengkap='".$_POST['nmLengkap']."',
|
|
noHP='".$_POST['noHP']."',
|
|
noHPOrtu='".$_POST['noHPOrtu']."',
|
|
$pass
|
|
email='".$_POST['email']."'
|
|
WHERE idmhs='$id'
|
|
";
|
|
} else {
|
|
$ThumbSquareSize = 200; //Thumbnail will be 150x150
|
|
$BigImageMaxSize = 200; //Image Maximum height or width
|
|
$ThumbPrefix = 'thumb_'; //Normal thumb Prefix
|
|
$DestinationDirectory = DIR_GAMBAR; //Upload Directory ends with / (slash)
|
|
$Quality = 90;
|
|
|
|
$RandomNumber = rand(0, 9999999999);
|
|
|
|
$ImageName = str_replace(' ', '-', strtolower($_FILES['foto']['name']));
|
|
$ImageSize = $_FILES['foto']['size']; // Obtain original image size
|
|
$TempSrc = $_FILES['foto']['tmp_name']; // Tmp name of image file stored in PHP tmp folder
|
|
$ImageType = $_FILES['foto']['type']; //Obtain file type, returns "image/png", image/jpeg, text/plain etc.
|
|
|
|
switch (strtolower($ImageType)) {
|
|
case 'image/png':
|
|
$CreatedImage = imagecreatefrompng($_FILES['foto']['tmp_name']);
|
|
break;
|
|
case 'image/gif':
|
|
$CreatedImage = imagecreatefromgif($_FILES['foto']['tmp_name']);
|
|
break;
|
|
case 'image/jpeg':
|
|
case 'image/pjpeg':
|
|
$CreatedImage = imagecreatefromjpeg($_FILES['foto']['tmp_name']);
|
|
break;
|
|
default:
|
|
echo json_encode(['result' => false, 'msg' => 'File gambar yang didukung hanya *.jpg,*.png,*.gif']);
|
|
exit;
|
|
|
|
break;
|
|
}
|
|
|
|
list($CurWidth, $CurHeight) = getimagesize($TempSrc);
|
|
$ImageExt = substr($ImageName, strrpos($ImageName, '.'));
|
|
$ImageExt = str_replace('.', '', $ImageExt);
|
|
|
|
$ImageName = 'mhs';
|
|
|
|
$NewImageName = $ImageName.'_'.$RandomNumber.'.'.$ImageExt;
|
|
$thumb_DestRandImageName = $DestinationDirectory.$NewImageName; //Thumb name
|
|
if (!resizeImage($CurWidth, $CurHeight, $BigImageMaxSize, $thumb_DestRandImageName, $CreatedImage, $Quality, $ImageType)) {
|
|
echo json_encode(['result' => false, 'msg' => 'Upload Gambar gagal']);
|
|
exit;
|
|
} else {
|
|
$msg = 'Profil telah disimpan.';
|
|
|
|
if ($_POST['password'] != '') {
|
|
$pass = "password='".md5(trim($_POST['password']))."', ";
|
|
} else {
|
|
$pass = '';
|
|
}
|
|
|
|
$queryupdate = "UPDATE tbmhs
|
|
SET
|
|
nmLengkap='".$_POST['nmLengkap']."',
|
|
$pass
|
|
email='".$_POST['email']."',
|
|
noHP='".$_POST['noHP']."',
|
|
noHPOrtu='".$_POST['noHPOrtu']."',
|
|
foto='".$NewImageName."'
|
|
WHERE idmhs='$id'
|
|
";
|
|
@unlink(DIR_GAMBAR.$_POST['img']);
|
|
}
|
|
}
|
|
if ($db->runQuery($queryupdate)) {
|
|
echo json_encode(['result' => true, 'msg' => $msg]);
|
|
$_SESSION['login-mhs']['nama_lengkap'] = $_POST['nmLengkap'];
|
|
} else {
|
|
//if($_POST['slider']=="Y"){
|
|
@unlink($DestRandImageName);
|
|
@unlink($thumb_DestRandImageName);
|
|
//}
|
|
echo json_encode(['result' => false, 'msg' => 'Aksi Gagal DbError']);
|
|
exit;
|
|
}
|
|
}
|
|
break;
|
|
}
|
|
}
|