관리자 페이지에서 파일첨부 폼 추가 방법 문의 입니다 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

관리자 페이지에서 파일첨부 폼 추가 방법 문의 입니다 정보

관리자 페이지에서 파일첨부 폼 추가 방법 문의 입니다

본문

관리자 페이지에서 로고 등의 파일을 첨부로 올려서 이용해보려고 합니다.
 
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">
 
와 같이 하고
 
파일첨부 폼을 <input type=file class=ed name='cf_6_sitelogo'  style='width:200;'> 와 같이 하였습니다.
 
cf_6_sitelogo  는 추가 필드이름이고요..
 
1) 어디로 저장이 되는 것인지 알고 싶습니다..저장 폴더를 설정해야 할 것 같습니다만..
2)첨부한 것을 불러오는 방법을 알고 싶습니다..
 
이래저래..뒤져서 폼을 작성까지는 했지만.. 더 이상은 몰라서 문의드립니다

댓글 전체

// 업로드 파일이 이미지인지 검사
    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 로 바로 불러들이고 있습니다...
엔코딩은 그대로 사용하시고 $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]?> 와 같이 불러오면 되나요..

작동은 하는데요.. 옳은 것인가요

그리고 로고가 같은 폴더에 계속 저장될 경우는 가장 최근것이 저장되는 것인가요..디비가 갱신되니까 그렇겠네요
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT