Notice
Recent Posts
Recent Comments
Tags
- XSS PHP
- asp.net dropdownlist
- javascript 바코드 생성
- 하드 마이그레이션
- php 캐쉬제거
- 하드 윈도우 복사
- ASP.Net Core 404
- 맥 오라클설치
- 바코드 생성하기
- asp.net Select
- XSS방어
- jquery 바코드
- SSD 복사
- TempData
- 강제이동
- 타임피커
- ViewBag
- ViewData
- 파일업로드 유효성체크
- 파일업로드 체크
- 말줄임표시
- django 엑셀불러오기
- asp.net core Select
- 404에러페이지
- javascript redirection
- javascript 바코드스캔
- 바코드 스캔하기
- Mac Oracle
- jquery 바코드생성
- javascript 유효성체크
웹개발자의 기지개
[PHP] 네이버에디터2 폴더변경시 수정사항 본문
보통의 경우 필자는 /smarteditor2/ 형태로 root 상에 위치시켜고 작업하는데,
/2024/ 폴더안에 /2024/smarteditor2/ 형태로 만들어야 하는 상황이 발생하였다.
네이버에디터2 의 폴더가 루트에서 특정 폴더로 바뀌었을때, 아래의 관련 소스를 살짝 수정하면 잘 작동한다.
[ attach_photo.js ]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
//File API 지원 여부로 결정
function checkDragAndDropAPI(){
try{
if( !oNavigator.ie ){
if(!!oNavigator.safari && oNavigator.version <= 5){
bSupportDragAndDropAPI = false;
}else{
bSupportDragAndDropAPI = true;
}
} else {
bSupportDragAndDropAPI = false;
}
}catch(e){
bSupportDragAndDropAPI = false;
}
bSupportDragAndDropAPI = false;
}
|
cs |
bSupportDragAndDropAPI = false; 해서 드래그 파일첨부 방식이 아니라, 일반 파일업로드 방식으로 수정
[ file_uploader.php ]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
<?php
// default redirection
$url = 'callback.html?callback_func='.$_REQUEST["callback_func"];
$bSuccessUpload = is_uploaded_file($_FILES['Filedata']['tmp_name']);
// SUCCESSFUL
if(bSuccessUpload) {
$tmp_name = $_FILES['Filedata']['tmp_name'];
$name = $_FILES['Filedata']['name'];
$filename_ext = strtolower(array_pop(explode('.',$name)));
$allow_file = array("jpg", "png", "bmp", "gif");
if(!in_array($filename_ext, $allow_file)) {
$url .= '&errstr='.$name;
} else {
$uploadDir = '../../upload/';
if(!is_dir($uploadDir)){
mkdir($uploadDir, 0777);
}
$newPath = $uploadDir.urlencode($_FILES['Filedata']['name']);
@move_uploaded_file($tmp_name, $newPath);
$url .= "&bNewLine=true";
$url .= "&sFileName=".urlencode(urlencode($name));
$url .= "&sFileURL=/2024/smarteditor2/upload/".urlencode(urlencode($name));
}
}
// FAILED
else {
$url .= '&errstr=error';
}
header('Location: '. $url);
?>
|
cs |
28라인에 /2024/ 폴더를 앞에 삽입
[ file_uploadder_html5.php ]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
<?php
$sFileInfo = '';
$headers = array();
foreach($_SERVER as $k => $v) {
if(substr($k, 0, 9) == "HTTP_FILE") {
$k = substr(strtolower($k), 5);
$headers[$k] = $v;
}
}
$filename = rawurldecode($headers['file_name']);
$filename_ext = strtolower(array_pop(explode('.',$filename)));
$allow_file = array("jpg", "png", "bmp", "gif");
if(!in_array($filename_ext, $allow_file)) {
echo "NOTALLOW_".$filename;
} else {
$file = new stdClass;
$file->name = date("YmdHis").mt_rand().".".$filename_ext;
$file->content = file_get_contents("php://input");
$uploadDir = '../../upload/';
if(!is_dir($uploadDir)){
mkdir($uploadDir, 0777);
}
$newPath = $uploadDir.$file->name;
if(file_put_contents($newPath, $file->content)) {
$sFileInfo .= "&bNewLine=true";
$sFileInfo .= "&sFileName=".$filename;
$sFileInfo .= "&sFileURL=/2024/smarteditor2/upload/".$file->name;
}
echo $sFileInfo;
}
?>
|
cs |
33라인에 /2024/ 폴더를 앞에 삽입
'PHP' 카테고리의 다른 글
[PHP] 페이지 이동 header() 와 <meta http-equiv='refresh' /> 비교 (0) | 2024.11.15 |
---|---|
[PHP] 파일 다운로드시 특정파일명으로 변경하여 다운로드 받고 싶을때(한글명) (2) | 2024.09.25 |
[PHP] GET방식의 파일다운로드 파일만들때 보안강화하기 (1) | 2024.07.14 |
[PHP] 실무팁 10 - 코드번호 만들기 (0) | 2024.07.09 |
[PHP] 유용한 실무팁 9 - 휴대폰 본인 인증 작업하기 (0) | 2024.07.04 |
Comments