내일은 대한입니다.
sun's longitude:299 31 22.12 
· 자유게시판 · 묻고답하기 · 알파문서 · RPMS list
· 사용자문서 · 팁/FAQ모음 · 리눅스Links · 자료실
· 서버정보 · 운영자 · Books/FAQ · FreeBSD
/board/read.php:소스보기  

질문과 답변 게시판입니다.

현재 실시간으로 이곳 서버의 설정파일(몇개)를 보여주고 있습니다.
서버의 설정내용에 관한 질문은 먼저 이곳 서버의 설정내용을 참고하시길 바랍니다.

[*** 쓰기 금지단어 패턴 ***]
글 본문 중간에 업로드할 이미지를 추가하는 방법 : @@이미지이름@@
ex) @@foo.gif@@
2073 번 글: php 질문
글쓴이: 김성민 글쓴날: 2004년 05월 31일 23:42:26 월(저녁) 조회: 1120
안녕하세요.
게시판을 새로 만들어 보고 있는데, 아래와 같은 문제는 어떻게
해결하는지 궁금해서요..

## delete.php?mode=action ##
if($mode=="action"){
$row=mysql_fetch_array(mysql_query("select id, passwd from board where
id='$id'"));
if(strcmp($row[passwd],$passwd)){
error("패스워드가
 틀립니다.");

exit;
}
else{
지우기.......
}
echo"<script>location='list.php';</script>";
exit;
}

<form name="board" method="post" action="<?
echo("$PHP_SELF?id=$id")?>">
<input type="hidden" name="mode" value="action">
<input type="password" name="passwd">
<input type="submit" value="지우기">

</form>

이걸 패스워드를 안다는 가정하에 
delete.php?mode=action&id=3&passwd=1111  요렇게 브라우저에 때리니까
진짜 지워져 버리네요?? ㅎㅎ

그래서, delete.php 상단에
if(!eregi(getenv("HTTP_HOST"), getenv("HTTP_REFERER"))){
echo("
<script language='javascript'>
history.back();
</script>");
exit;
}
요렇게 REFERER  값과 요청한 HOST 를 비교하도록 했는데, 이러면
일단 되돌아 가기는 합니다만, 왠지 부실하다는 생각이
듭니다.
php school 에서 검색해보니 회원인증이나 쿠키를 이용해서
쿠키가 없는 경우 되돌려 보내는등의 방법이 있다고 하는데,
회원인증이나 쿠키가 있다고 해도 위와 같이 알고 직접
접근하는것은 어쩔수 없지 않아 싶은데요...

보통 게시판 만들때 어떠한 방법으로 링크를 통한 접근이 아닌
비정상적인 조작을 막을수 있는지 궁금 합니다..

 
이전글 : Re: Re: 한글을 영문으로
다음글 : Re: php 질문  
 from 211.42.226.185
JS(Redhands)Board 0.4 +@

Re: Re: 한글을 영문으로 Re: php 질문
인쇄용 


apache lighttpd linuxchannel.net 
Copyright 1997-2026. linuxchannel.net. All rights reserved.

Page loading: 0.01(server) + (network) + (browser) seconds