관리자 페이지에서 파일첨부 폼 추가 방법 문의 입니다 정보
관리자 페이지에서 파일첨부 폼 추가 방법 문의 입니다본문
관리자 페이지에서 로고 등의 파일을 첨부로 올려서 이용해보려고 합니다.
g4/adm/config_form.php 에서
<!--<form name=fconfigform method=post action='javascript:fconfigform_submit(document.fconfigform);'>-->
을 아래와 같이하고
<form name=fconfigform method=post action='config_form_update.php' enctype="multipart/form-data">
<form name=fconfigform method=post action='config_form_update.php' enctype="multipart/form-data">
와 같이 하고
파일첨부 폼을 <input type=file class=ed name='cf_6_sitelogo' style='width:200;'> 와 같이 하였습니다.
cf_6_sitelogo 는 추가 필드이름이고요..
1) 어디로 저장이 되는 것인지 알고 싶습니다..저장 폴더를 설정해야 할 것 같습니다만..
2)첨부한 것을 불러오는 방법을 알고 싶습니다..
이래저래..뒤져서 폼을 작성까지는 했지만.. 더 이상은 몰라서 문의드립니다
댓글 전체

질문하신 사항들을 config_form_update.php 파일에 코딩하셔야 합니다.
php 코드를 모르신다면 힘드네요..--;;
php 코드를 모르신다면 힘드네요..--;;
답변감사합니다..
그런데 간단한 예시 정도라도 가능한지요
그런데 간단한 예시 정도라도 가능한지요

// 업로드 파일이 이미지인지 검사
if (is_uploaded_file($_FILES[cf_6_sitelogo][tmp_name])) {
if (!preg_match("/(\.jpg|gif|png)$/i", $_FILES[cf_6_sitelogo][name])) {
alert($_FILES[cf_6_sitelogo][name] . '은(는) 이미지 파일이 아닙니다.');
}
//업로드
if (preg_match("/(\.jpg|gif|png)$/i", $_FILES[cf_6_sitelogo][name])) {
@$data_files ="$g4[path]/경로/경로"; //이미지를 업로드할 자리(경로와 폴더명)를 지정 하세요.
@mkdir("$data_files", 0707);//폴더생성
@chmod("$data_files", 0707);//권한설정
$filename =$_FILES[cf_6_sitelogo][name];//업로드된 실제파일명
$filename = abs(ip2long($_SERVER[REMOTE_ADDR])).'_'.substr(md5(uniqid($g4[server_time])),0,8).'_'.str_replace('%', '', urlencode($filename));//파일명을 엔코딩
$dest_paths = "$data_files/$filename";//파일명과 업로드할 경로
move_uploaded_file($_FILES[cf_6_sitelogo][tmp_name], $dest_paths);//업로드저장
chmod($dest_paths, 0606);//저장한파일을 권한설정
$uploadname = $filename;//최종파일명
}
}
위처럼 한후 업로드된 파일명 $uploadname 을 원하는 필드에 넣어 주세요.
if (is_uploaded_file($_FILES[cf_6_sitelogo][tmp_name])) {
if (!preg_match("/(\.jpg|gif|png)$/i", $_FILES[cf_6_sitelogo][name])) {
alert($_FILES[cf_6_sitelogo][name] . '은(는) 이미지 파일이 아닙니다.');
}
//업로드
if (preg_match("/(\.jpg|gif|png)$/i", $_FILES[cf_6_sitelogo][name])) {
@$data_files ="$g4[path]/경로/경로"; //이미지를 업로드할 자리(경로와 폴더명)를 지정 하세요.
@mkdir("$data_files", 0707);//폴더생성
@chmod("$data_files", 0707);//권한설정
$filename =$_FILES[cf_6_sitelogo][name];//업로드된 실제파일명
$filename = abs(ip2long($_SERVER[REMOTE_ADDR])).'_'.substr(md5(uniqid($g4[server_time])),0,8).'_'.str_replace('%', '', urlencode($filename));//파일명을 엔코딩
$dest_paths = "$data_files/$filename";//파일명과 업로드할 경로
move_uploaded_file($_FILES[cf_6_sitelogo][tmp_name], $dest_paths);//업로드저장
chmod($dest_paths, 0606);//저장한파일을 권한설정
$uploadname = $filename;//최종파일명
}
}
위처럼 한후 업로드된 파일명 $uploadname 을 원하는 필드에 넣어 주세요.
답변감사합니다..//
그런데 파일 업로드는 잘되는데
<img src="<?=$logo_up_skin_path?>/<?=$uploadname?>.gif"> 와 같이 입력했는데..엑박이 뜨네요
경로는 맞는데..파일명이 불러지질 않습니다..
주소/ .gif 와 같이 밖에 안되네요
그리고 위에서
@mkdir("$data_files", 0707);//폴더생성 은 언제 이용하나요..업로드시 폴더생성도 가능한가요
또한 파일명을 엔코딩하면 안되네 엔코딩부분을 주석처리하여 이용하고 있습니다..
파일명은 업로드 실제이름으로 하고요..
하여간 첨부는 잘되는 현재 잘 되는 것 같습니다 ..위의 처럼 $uploadname 은 안되서..logo.gif 로 바로 불러들이고 있습니다...
그런데 파일 업로드는 잘되는데
<img src="<?=$logo_up_skin_path?>/<?=$uploadname?>.gif"> 와 같이 입력했는데..엑박이 뜨네요
경로는 맞는데..파일명이 불러지질 않습니다..
주소/ .gif 와 같이 밖에 안되네요
그리고 위에서
@mkdir("$data_files", 0707);//폴더생성 은 언제 이용하나요..업로드시 폴더생성도 가능한가요
또한 파일명을 엔코딩하면 안되네 엔코딩부분을 주석처리하여 이용하고 있습니다..
파일명은 업로드 실제이름으로 하고요..
하여간 첨부는 잘되는 현재 잘 되는 것 같습니다 ..위의 처럼 $uploadname 은 안되서..logo.gif 로 바로 불러들이고 있습니다...

엔코딩은 그대로 사용하시고 $uploadname 를 그대로 불러오면 안됩니다.
위의 설명처럼 $uploadname 를 저장용 필드에 들어가도록 한후
이미지를 호출할때에 $설정값[이미지이름이 들어간필드명] 이렇게 호출하세요
위의 설명처럼 $uploadname 를 저장용 필드에 들어가도록 한후
이미지를 호출할때에 $설정값[이미지이름이 들어간필드명] 이렇게 호출하세요
config_form_logo_update.php 에서
$sql = " update $g4[sitelogo_table]
set cf_1_sitelogo = '$cf_1_sitelogo',
cf_2_sitelogo = '$cf_2_sitelogo',
cf_3_sitelogo = '$cf_3_sitelogo',
cf_4_sitelogo = '$cf_4_sitelogo',
cf_5_sitelogo = '$cf_5_sitelogo',
cf_6_sitelogo = ' $uploadname'
";
sql_query($sql);
위와 같이하고 <?=$sitelogo[cf_6_sitelogo]?> 와 같이 불러오면 되나요..
작동은 하는데요.. 옳은 것인가요
그리고 로고가 같은 폴더에 계속 저장될 경우는 가장 최근것이 저장되는 것인가요..디비가 갱신되니까 그렇겠네요
$sql = " update $g4[sitelogo_table]
set cf_1_sitelogo = '$cf_1_sitelogo',
cf_2_sitelogo = '$cf_2_sitelogo',
cf_3_sitelogo = '$cf_3_sitelogo',
cf_4_sitelogo = '$cf_4_sitelogo',
cf_5_sitelogo = '$cf_5_sitelogo',
cf_6_sitelogo = ' $uploadname'
";
sql_query($sql);
위와 같이하고 <?=$sitelogo[cf_6_sitelogo]?> 와 같이 불러오면 되나요..
작동은 하는데요.. 옳은 것인가요
그리고 로고가 같은 폴더에 계속 저장될 경우는 가장 최근것이 저장되는 것인가요..디비가 갱신되니까 그렇겠네요