웹마스터 팁

다들 아실거 같은데 올리려나 참 쑥쓰럽네여..ㅠ_ㅠ

그래도 모하나 올리고 싶은마음에^^;;

그럼 허섭 tip알려드릴께요^^;;

시작~

보통 폼에서 어떤 자료를 입력받는 html파일과 그 입력받은 자료를

처리하는 php파일을 따로 만들어서 처리하게 되는데요

간단하게 if문을 통해서 파일하나에서 해결할수 있답니다..아주아주

간단한 예문을 들어드리겠습니다.

ex1)html과 php가 분할된 파일

test.html

<html>
<body bgcolor=white>
   <form action=test.php>
     <input type=text name=id size=20><br>
     <input type=password name=passwd size=6 maxlength=6>
     <input type=submit value="전송">
   </form>
</body>
</html>

test.php
<?
$userid = "test";
$userpass = "1234";

if($userid == $id){
    if($userpass == $passwd){
      echo "인증성공!! 아이디와 패스워드가 일치하지 않습니다..";
    }
    elseif($userpass != $passwd){
      echo "인증실패!! 패스워드가 일치하지 않습니다..";
    }
elseif($userid != $id){
    echo "존재하지 않는 아이디 입니다..";
}
?>

위에 프로그램은 이미 입력되있는  userid 와 userpass 값을

사용자가 입력한  id 와  passwd 값을 비교하여 인증성공 여부를 알려주는

간단한 프로그램입니다.. 이 프로그램을 파일하나로 함치면 아래와  같습니다.

이건 저에 노하우 이기때문에 상당히 허접할수도 있고 아닐수도 있습니다..

욕만하지 말아주세요..ㅠ_ㅠ

test.php

<?

if(!$mode){
   echo "<html>
              <body bgcolor=white>
               <form action=$PHP_SELF>
                <input type=hidden name=mode value=ok>
                <input type=text name=id size=20><br>
                <input type=password name=passwd size=6 maxlength=6>
                <input type=submit value='전송'>
               </form>
             </body>
            </html>";
}
elseif($mode == ok){

   $userid = "test";
   $userpass = "1234";

    if($userid == $id){
    if($userpass == $passwd){
      echo "인증성공!! 아이디와 패스워드가 일치하지 않습니다..";
    }
    elseif($userpass != $passwd){
      echo "인증실패!! 패스워드가 일치하지 않습니다..";
    }
   elseif($userid != $id){
      echo "존재하지 않는 아이디 입니다..";
    }
  }




위에 합쳐진 프로그램의 알고리즘(?)은 $mode 변수로 현재 이 프로그램이

해야 할일을 알아챈다는것입니다...

만약  $mode 값이 존재하지 않으면

당연히 입력창을 내보내야겠죠?? 그래서

if(!$mode) {

를 통해서 입력창을 내보냅니다 그러고서

먼저 유심히 봐야할점은

<form action=$PHP_SELF>

입니다 $PHP_SELF 란 현재 실행되고 있는 PHP프로그램의 상대경로

가 들어가게 됩니다 때문에 폼엑션을 현재의 파일로 하라는 말이되죠~


다음으로 주목해야 할점은

<input type=hidden name=mode value=ok>

입니다.. type=hidden으로 두면 화면에서는 보이지 않지만  mode 라는 이름으

로 ok란 값을 가진 변수가 생성됩니다.

그래서 전송이란 버튼을 누르게 되면 이 프로그램은 자신을 다시 RELOAD 하

게 됩니다 그러면서 처음에

if(!$mode){

가 있으므로 mode변수의 존재를 검사합니다 이미 우리는 이전에 mode값이

ok로 전송하였으므로 mode값은 존재하게 됩니다 때문에 {} 사이의 명령어를

무시하고 다음  elseif로 넘어가게 됩니다. 다음 elseif에서 mode 값이 ok

라면..{} 사이를 실행하라는 명령어가 보입니다..그러면 당연히 {} 사이의

명령어를 실행하게 됩니다..그래서 1번 예제의 test.php의 역활을 하게 됩니다

정말 쉬운 내용을 엄청 길게 설명했네여^^;;

초보분들에게 도움이 됬음 좋겠네여^^;;

다음에 또 올릴게요^^

참고로 이것을 응용하면 자신의 홈페이지에 존재하는 많은 페이지를 위의

같은 경우로 mode값만 변경해가면서 이동할수 있습니다....또 아주 많은

곳에서 활용이 가능하므로 아직 몰르셨다면 익혀두시기 바랍니다..^^

제목 글쓴이 날짜
[OsE=] 최단 거리... [6] OsE= 2002.03.02
[OsE=] IF 대신... [6] OsE= 2002.03.02
[Yuki-H.] 이미지 크기가 일정 픽셀 이상이면 축소하여... [8] Yuki-H. 2002.03.04
많은것을 파일하나로 처리하잣!! [5] 실버 2002.03.05
2번째~~!! DATE값 받아놓기 &상대방 아이피 알아내기~ [7] 실버 2002.03.07
요일을 한글로 표시 [5] 페리스 2002.03.10
반복문을 한번만 사용한 구구단 [2] 페리스 2002.03.10
php를 리눅스쉘상 에서도 사용하자? [5] 실버 2002.03.10
유용한 함수 - array_reverse 리들 2002.03.10
가변적 변수 할당하는 방법 (t1=1; t2=2; t=t.rand(1,2);) [1] 차카게살자 2002.03.11
[추천 팁] index key 값을 갖는array에서 value에 의한 key값 반환 [1] 차카게살자 2002.03.11
include를 이용한 다음넷 홈페이지 꾸미기1 [10] ZipShin 2002.03.12
include를 이용한 다음넷 홈페이지 꾸미기2(그림 첨부) [4] file ZipShin 2002.03.12
TheMics의 예제와 함께하는 PHP기초(上) [1] TheMics 2002.03.14
[씽크식 PHP] 초심자들이 많이 겪는 실수.. [7] [ζ]씽크 2002.03.16
echo 문 대신... [5] TryZ 2002.03.17
[추천 팁] 방문자의 os와 browser체크 함수.... [3] navyism 2002.03.18
[추천 팁] setcookie()사용시 header어쩌구 하는 에러날때.... [1] 하얀바다 2002.03.19
[추천 팁] [씽크식 PHP] PHP에대해 아무 지식이 없는 사람이 오해하는것. [3] [ζ]씽크 2002.03.23
[씽크식 PHP] 글자 하나씩 때어놓기.. (한글 자르기 포함) [1] John Sync. 2002.03.26