웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
많은것을 파일하나로 처리하잣!!
2002.03.05 20:41
다들 아실거 같은데 올리려나 참 쑥쓰럽네여..ㅠ_ㅠ
그래도 모하나 올리고 싶은마음에^^;;
그럼 허섭 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값만 변경해가면서 이동할수 있습니다....또 아주 많은
곳에서 활용이 가능하므로 아직 몰르셨다면 익혀두시기 바랍니다..^^
그래도 모하나 올리고 싶은마음에^^;;
그럼 허섭 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값만 변경해가면서 이동할수 있습니다....또 아주 많은
곳에서 활용이 가능하므로 아직 몰르셨다면 익혀두시기 바랍니다..^^
댓글 5
-
[폐]허접-_-
2002.03.05 21:49
-
탐그루
2002.03.06 18:45
일반적으로 많이 쓰는 방법으로 알고 있습니다. 저 역시 if 대신 switch문을 이용해서 님과 같은 방식으로 사용하고 있습니다. -
Kesarr
2002.03.07 00:40
흠.. form 태그에서 action 의 기본값이 $PHP_SELF 와 동일합니다.-_-;;
그러니 그냥 <form> 이라고 해도 되는것이죠.^^;;
그리고 저라면 위와 같은 경우에서 $mode 란 변수를 따로 안 만들고 그냥 $id 와 $password 로만 체크할 것 같습니다.
<?
if($id&&$password) {
PHP 스크립트
exit;
}
?>
HTML 문서 -
Zeldign
2002.03.07 06:25
위의 의견에 대한 사항중 exit는 굳이 필요하지 않을꺼 같네요.
아래 스크립트도 없는데 괜한 exit문을 쓰는거 같은데여. -
실버
2002.03.07 17:12
Kesarr님께서 오해가 있으신거 가타서..
제가 이 웹강좌를 쓴이유는 단지 아이디와 패스워드를 채크하는 프로그램을 설명하기 위한것이 아니라
초보들한테 여러가지의 처리를 파일하나로 해결할때 이러한 방법도 있으니 알어두셨으면 해서 남긴것입니다~
제목 | 글쓴이 | 날짜 |
---|---|---|
php를 리눅스쉘상 에서도 사용하자? [5] | 실버 | 2002.03.10 |
반복문을 한번만 사용한 구구단 [2] | 페리스 | 2002.03.10 |
요일을 한글로 표시 [5] | 페리스 | 2002.03.10 |
2번째~~!! DATE값 받아놓기 &상대방 아이피 알아내기~ [7] | 실버 | 2002.03.07 |
많은것을 파일하나로 처리하잣!! [5] | 실버 | 2002.03.05 |
[Yuki-H.] 이미지 크기가 일정 픽셀 이상이면 축소하여... [8] | Yuki-H. | 2002.03.04 |
[OsE=] IF 대신... [6] | OsE= | 2002.03.02 |
[OsE=] 최단 거리... [6] | OsE= | 2002.03.02 |
[OsE=] 기초적인 정규표현식 [3] | OsE= | 2002.03.02 |
[OsE=] Session을 배워보자~ [#3] [1] | OsE= | 2002.03.02 |
[OsE=] Session을 배워보자~ [#2) | OsE= | 2002.03.02 |
[OsE=] Session을 배워보자~ [#1] | OsE= | 2002.03.02 |
[OsE=] 프로그래밍하시는 분들은...생각에 틀에서.. [4] | OsE= | 2002.03.02 |
[OsE=] 게시판 만들시.... 전체 html적용 [4] | OsE= | 2002.03.02 |
[OsE=] 오스보드에 적용된 페이징 방법(알고리즘?) | OsE= | 2002.03.02 |
[OsE=] 비교해서 HTML 출력 [2] | OsE= | 2002.03.02 |
[OsE=] 보안문제.. 남의 일이아닙니다. [1] | OsE= | 2002.03.02 |
[씽크식 PHP] 상수 [1] | John Sync. | 2002.02.26 |
[OsE=] Mysql 전체 리스트 갯수 불러올때 [3] | OsE= | 2002.02.26 |
[OsE=] 간단한 PHP_SELF.. 그냥 참고하세요 [7] | OsE= | 2002.02.26 |
초보 플밍가들에겐 좋은 팁 같다는^-^)b