웹마스터 팁

modify_ok.php3 파일
1 <?
      2   include "lib.php3";
      3   include "dbconn.php3";
      4
      5   // 암호, 이름, 내용에 대해서 입력을 하지 않았을 경우 에러메세지 출력
      6   if(isBlank($password)) message("암호를 입력하셔야 합니다");
      7   if(isBlank($writer)) message("이름을 입력하셔야 합니다");
      8   if(isBlank($comment)) message("내용을 입력하셔야 합니다");
      9
     10   // 글쓴이의 비밀 번호를 DB 로 부터 가져와서 비교, 관리자 비번일때는 수정 가능
     11   $result=mysql_query("select password from $table_name where no='$no'", $connect);
     12   $check_passwd=mysql_fetch_array($result);
     13
     14   if($check_passwd["password"]!=$password && $admin_password!=$password) message("비밀번호가 틀렸습니다");
     15
     16
     17   // 홈페이지 주소의 경우 http:// 가 없으면 붙임
     18   if((!eregi("^http://",$homepage))&&$homepage) $homepage="http://".$homepage;
     19
     20   // 이름, 홈페이지, 메일, 본문내용 중 '등의 특수문자 존재시 앞에 (역슬래쉬)를 붙여줌
     21   $writer=addslashes($writer);
     22   $homepage=addslashes($homepage);
     23   $email=addslashes($email);
     24   $comment=addslashes($comment);
     25
     26   // 방명록 내용등에 html 태그등을 잘못 써서 화면이 깨지는 것 방지
     27   $writer=avoid_crack($writer);
     28   $email=avoid_crack($email);
     29   $comment=avoid_crack($comment);
     30
     31   // html 사용하지 않을시 del_html() 함수로 태그를 일반문자로 변환
     32   if(!$use_html) $comment=del_html($comment);
     33
     34   // 방명록의 본문 내용의 n(줄바꿈)을 <br> 태그로 변환
     35   $comment=nl2br($comment);
     36
     37   // 현재 접속자의 IP주소 체크
     38   $ip=$REMOTE_ADDR;
     39
     40   // 지금 글쓴 시간을 체크
     41   $reg_date=time();
     42
     43   // DB에 입력
     44   mysql_query("update $table_name set
     45                ip='$ip',
     46                writer='$writer',
     47                homepage='$homepage',
     48                email='$email',
     49                comment='$comment',
     50                reg_date='$reg_date'
     51                where no='$no'", $connect)
     52   or die(mysql_error());
     53
     54   header("location:list.php3");
     55 ?>

내용설명

수정시에는 비밀번호를 검사하는 루틴을 추가하여야 합니다.
글쓴이가 입력한 비밀번호와 관리자비밀번호를 MySQL DB에 저장되어 있는 비밀번호와 비교하여 둘중의 하나와 같다면 수정하고 그렇지 않다면 경고메세지를 출력합니다.

11~12 : MySQL DB에서 $no 행의 데이터중 비밀번호를 가져옵니다.

14 : 입력된 비밀번호와 관리자 비밀번호를 MySQL DB에서 구한 비밀번호와 비교하여 틀리면 경고메세지를 출력합니다.

44~52 : update 쿼리를 사용하여 데이터를 수정합니다.
제목 글쓴이 날짜
회원관리 프로그램을 구현하고 싶은신 분들께.. [7] [폐]허접-_- 2002.03.18
PHP 인증 페이지를 만들자! - Lesson 2 수정본 #1 [5] ☺[폐]허접-_- 2002.01.24
PHP 인증 페이지를 만들자! - Lesson 1 수정본 #2 ☺[폐]허접-_- 2002.01.24
노프레임/카운터에 관련된 PHP함수 팁 몇가지 [1] 차카게살자 2001.12.28
MySQL 루트비번 분실시 대처요령 [29] zero 2001.04.18
교육용 방명록 #8 [delete.php3파일에서 넘겨받은 비밀번호를 검사하여 글을 삭제합니다.] [18] zero 2000.07.03
교육용 방명록 #7 [삭제 버튼을 눌렀을 때 비밀번호를 입력받는 부분입니다.] [5] zero 2000.07.03
교육용 방명록 #6 [수정된 값을 넘겨받아서 비밀번호를 비교하고 변경하여 줍니다.] [2] zero 2000.07.03
교육용 방명록 #3 [글쓰기 폼에서 넘어온 값을 DB에 입력하기] [5] zero 2000.07.03
교육용 방명록 #2 [글쓰기 폼 작성] [11] zero 2000.07.03
교육용 방명록 #1 [전체구성 설정, 테이블 생성, 기본함수 정의] [50] zero 2000.07.03
최근 게시물을 나타내는 원리와 방법 [55] zero 2000.03.06
교육용 메모장 #5 [21] zero 2000.07.10
교육용 메모장 #4 [18] zero 2000.07.10
교육용 메모장 #3 [16] zero 2000.07.10
교육용 메모장 #2 [18] zero 2000.07.10
교육용 메모장 #1 [53] zero 2000.07.10
윈2000, NT 또는 98에서 APM설치하기 [74] zero 2000.08.26
MySQL DB 데이타 백업/복구 하는 방법 [38] zero 2000.08.26
자동링크 만드는 방법!!! [28] zero 2000.03.06