테스트 사이트 - 개발 중인 베타 버전입니다

외부접근 차단? 채택완료

지율아빠 4년 전 조회 2,381

3등급 이상인 회원리스트를 다운로드 할 수 있는 페이지를 만들었습니다.

관리자만 엑셀 파일로 다운로드 할 수 있게끔 만들었는데요...

 

문제는 주소창에서 이 파일에 대한 경로명을 직접입력하면 권한에 상관없이 다운로드 되고 있습니다.

권한 없는 사람의 주소 직접 입력으로 페이지에 접근하는 것을 차단할 방법이 있을까요?

 

</p>

<p> </p>

<p><?

header("Content-type: application/vnd.ms-excel"); 

header("Content-Disposition: attachment; filename=".date('Ymd').".xls");

header("Content-Description: PHP5 Generated Data");

header("Content-charset=utf-8");

echo("<meta http-equiv='content-type' content='text/html; charset=utf-8'>");</p>

<p>include "_common.php";</p>

<p> </p>

<p>if ($member['mb_level'] < 9)

alert("관리자만 접근 가능한 페이지입니다", "/");</p>

<p>?>

<table border="1">

 <tr align="center">

  <td>번호</td>

  <td>이름</td>

  <td>가입일</td>

  <td>연락처</td>

  <td>Email</td>

 </tr></p>

<p>  <?

  $mem = sql_query("SELECT * FROM g5_member where mb_level >= 3 && mb_leave_date = '' && mb_intercept_date = '' && mb_email_certify != '' ORDER BY mb_no DESC");

  while($row = sql_fetch_array($mem)) {

  ?></p>

<p> <tr>

  <td><?=$row['mb_no']?></td>

  <td align="center"><?=$row['mb_name']?></td>

  <td align="center"><?=date("Y-m-d", strtotime($row['mb_datetime']));?></td>

  <td align="center"><?=$row['mb_hp']?></td>

  <td><?=$row['mb_email']?></td>

 </tr>

<?

}

?>

</table></p>

<p>

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
JYoung
4년 전

안녕하세요.

아래처럼 변경해 보세요~

 

if ($member['mb_level'] < 9) alert("관리자만 접근 가능한 페이지입니다", "/");

header("Content-type: application/vnd.ms-excel");  header("Content-Disposition: attachment; filename=".date('Ymd').".xls"); header("Content-Description: PHP5 Generated Data"); header("Content-charset=utf-8"); echo("");

 ?>

                = 3 && mb_leave_date = '' && mb_intercept_date = '' && mb_email_certify != '' ORDER BY mb_no DESC");   while($row = sql_fetch_array($mem)) {   ?>              
번호이름가입일연락처Email

 

 

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

지율아빠
4년 전
위치만 변경해도 되는군요...ㅜ.ㅜ
초보의 헤맴은 도대체 어디까지 일지... 모르겠네요...
제이영님. 답변 감사드립니다. 덕분에 잘 해결됐습니다.

댓글을 작성하려면 로그인이 필요합니다.

4년 전

if (!$is_admin)   alert("관리자만 접근 가능한 페이지입니다", "/");

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

지율아빠
4년 전
항상 친절한 답변 감사드립니다. 마르스컴퍼니님...
덕분에 잘 해결됐습니다.^^

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인