티스토리 뷰
<!doctype html>
<html lang=`ko`>
<head>
<meta charset="utf-8">
</head>
<body>
<form name="form1" method="post" action="upload.php" ENCTYPE="multipart/form-data" accept-charset="UTF-8">
<input type="file" name="txtPHOTO" id="txtPHOTO" READONLY/>
<?php if($row["S_PHOTO_REAL"]!="") {
$savedir = "/upfile/ZJ20141127_224420/";
//echo "<a href=`".$savedir.$row["S_PHOTO"]."` target=`_blank`>".$row["S_PHOTO_REAL"]."</a>";
echo "<a href=`".$savedir.$row["S_PHOTO"]."` target=`_blank` style=`padding-right:20px;`>이미지</a>";
} ?>※ 용량은 2MB 초과 할 수 없습니다 ※ 파일은 JPG / PNG 만 가능합니다.<input type="submit" />
</form>
</body>
</html>
[ upload.php ]
<?php
$rootPage = "10_new.php"; // 페이지
// 파일 처리 시작
$fileNum = count($_FILES['txtPHOTO']);
$savedir = $_SERVER[DOCUMENT_ROOT]."/upfile/teacher/";
$beforePhoto = ""; // 기존 사진 파일명
// 수정인 경우 기존 사진 이미지가 있는지 확인
if($txtMode == "MOD") {
$queryCheck = "SELECT * FROM t_teacher2 WHERE t_idx = '".$txtIdx."' ";
$resultCheck = mysql_query($queryCheck);
$rowNumCheck = mysql_affected_rows();
for($c = 0; $c < $rowNumCheck; $c++) {
$rowCheck = mysql_fetch_array($resultCheck);
if(trim($rowCheck["photo"]) != "") {
$beforePhoto = $savedir.$rowCheck["photo"];
}
}
}
//
if($_FILES["txtPHOTO"]["name"]!="") {
$fileFullNameReal = $_FILES["txtPHOTO"]["name"];
$fileFullName = date("YmdHis");
$fileFullNameTemp = $_FILES["txtPHOTO"]["tmp_name"];
//$fileExtName = pathinfo($fileFullNameReal); // dirname / basename / extension
//$fileExtName = $fileExtName[`extension`];
//$fileFullName .= ".".$fileExtName;
$fileExtName=explode(".",$fileFullNameReal);
$fileExtName=$fileExtName[sizeof($fileExtName)-1];
$fileFullName .= ".".$fileExtName;
$fileSize = $_FILE["txtPHOTO"]["size"]; // 31998byte
$fileSizeMB = bcdiv(bcdiv($fileSize,1024,3),1024,3); // byte -> MB 변환 : bcdiv(조건1,조건2,소수점자리) : 조건1 나누기 조건 2
// 파일용량 2MB 체크 시작
if($fileSizeMB > 10) {
echo "<script>alert(`파일용량은 10MB 를 초과 하실 수 없습니다. 작은 사이즈의 파일을 업로드 해주세요`);</script>";
unlink($fileFullNameTemp); // 임시파일 삭제
//break;
echo "<script>history.back();</script>";
}
// 파일용량 2MB 체크 끝
// 확장자 체크 시작
if(!(
(strcasecmp($fileExtName, "JPG") == 0)
OR
(strcasecmp($fileExtName, "JPEG") == 0)
OR
(strcasecmp($fileExtName, "GIF") == 0)
OR
(strcasecmp($fileExtName, "PNG") == 0)
)) {
echo "<script>alert(`등록할수 없는 파일 형식 입니다`);</script>";
unlink($fileFullNameTemp); // 임시파일 삭제
//break;
echo "<script>history.back();</script>";
}
// 확장자 체크 끝
}
// 파일 처리 끝
// INSERT
if($txtMode == "INS") {
$query = "";
$query .= " INSERT INTO t_teacher2 SET ";
$query .= " gubun = '".trim($txtGubun)."', ";
$query .= " code = '".trim($txtCode)."', ";
$query .= " name = '".trim($txtName)."', ";
$query .= " position = '".trim($txtPosition)."', ";
$query .= " major = '".trim($txtMajor)."', ";
$query .= " room = '".trim($txtRoom)."', ";
$query .= " tel = '".trim($txtTel)."', ";
$query .= " email = '".trim($txtEmail)."', ";
$query .= " photo = '".trim($fileFullName)."', ";
$query .= " note1 = '".trim($txtNote1)."', ";
$query .= " note2 = '".trim($txtNote2)."' ";
$result = mysqli_query($conn,$query);
if($result) {
$dest = $savedir."".$fileFullName;
//if(@exec("cp $fileFullNameTemp $dest")!=0){ // linux
if(move_uploaded_file($fileFullNameTemp, $dest)) { // window
unlink($fileFullNameTemp); // 임시파일 삭제
} else {
echo "<script>alert(`파일입력 오류`);</script>";
//break;
echo "<script>history.back();</script>";
}
echo "<script>alert('등록에 성공 하였습니다.');</script>";
echo "<script> location.replace('/html/01_about/$rootPage?subPage=$subPage');</script>";
} else {
echo "<script>alert('등록에 실패 하였습니다.');</script>";
unlink($fileFullNameTemp); // 임시파일 삭제
echo "<script>history.back();</script>";
}
}
// MODIFY
if($txtMode == "MOD") {
$query = "";
$query .= " UPDATE t_teacher2 SET ";
$query .= " gubun = '".trim($txtGubun)."', ";
$query .= " code = '".trim($txtCode)."', ";
$query .= " name = '".trim($txtName)."', ";
$query .= " position = '".trim($txtPosition)."', ";
$query .= " major = '".trim($txtMajor)."', ";
$query .= " room = '".trim($txtRoom)."', ";
$query .= " tel = '".trim($txtTel)."', ";
$query .= " email = '".trim($txtEmail)."', ";
$query .= " photo = '".trim($fileFullName)."', ";
$query .= " note1 = '".trim($txtNote1)."', ";
$query .= " note2 = '".trim($txtNote2)."' ";
$query .= " WHERE s_idx = '".$txtIdx."' ";
$result = mysqli_query($conn,$query);
if($result) {
//if(@exec("cp $fileFullNameTemp $dest")!=0){ // linux
if(move_uploaded_file($fileFullNameTemp, $dest)) { // window
unlink($fileFullNameTemp); // 임시파일 삭제
unlink($beforePhoto); // 기존 파일 삭제
} else {
echo "<script>alert(`파일입력 오류`);</script>";
//break;
echo "<script>history.back();</script>";
}
echo "<script>alert('수정에 성공 하였습니다.');</script>";
echo "<script> location.replace('/html/01_about/10_in.php?subPage=$subPage&txtIdx=".$txtIdx."');</script>";
} else {
echo "<script>alert('수정에 실패 하였습니다.');</script>";
unlink($fileFullNameTemp); // 임시파일 삭제
echo "<script>history.back();</script>";
}
}
// DELETE
if($txtMode == "DEL") {
$query = "";
$query .= " DELETE FROM t_teacher2 WHERE s_idx = '".$txtIdx."' ";
$result = mysqli_query($conn,$query);
if($result) {
unlink($beforePhoto); // 기존 파일 삭제
echo "<script>alert('삭제에 성공 하였습니다.');</script>";
echo "<script> location.replace('/html/01_about/$rootPage?subPage=$subPage');</script>";
} else {
echo "<script>alert('삭제에 실패 하였습니다.');</script>";
echo "<script>history.back();</script>";
}
}
?>
'Language > PHP' 카테고리의 다른 글
[ PHP ] 문자열 함수 (0) | 2016.02.10 |
---|---|
[ PHP ] function - 함수 펑션 (0) | 2016.02.10 |
[ PHP ] 대소문자 구분 없는 비교 - strcasecmp (0) | 2016.02.04 |
[ PHP ] 확장자 구하기 - pathinfo (0) | 2016.02.04 |
[ PHP ] 정밀 함수 구하기 계산결과 - BC Math 함수 (0) | 2016.02.04 |