뽁

자바스크립트 안에 php문

코드 짜다가 갑자기 궁금해서 질문드립니다.

글쓰기 체크하는 폼부분에서 특정값에 따라 자바스크립트가 틀릴 경우
javascrip 와 php 둘중 어느걸로 짜는게 좋을까요?

1. php if문으로 출력 여부 체크
<? if($category == "s1") { ?>
jascript code1
<? } else { ?>
jascript code2
<? } ?>

2. javascript 로 체크
if (f.category.value == "s1") {
javascript code1
} else {
javascript code2
}

별차이 없으려나요?

스크립트문 안에 php로 집어넣으니 너무 지저분하네요~;;


|

댓글 25개

ㅋㅋㅋㅋㅋㅋㅋㅋ
엉뚱한 질문인데... 코멘트에 이미지 보이게 하려면 어떻게 해야하는지 ^^;;
ㅋㅋㅋ ㅋㅋ
ㅋㅋㅋㅋㅋㅋ 그렇군요ㅋㅋㅋㅋ
php는 서버사이드 언어이고 javascript는 클라이언트사이드 언어입니다.
즉 php는 항상 먼저 해석되어야해요. 1번 같은 코드는 불가능합니다.
딴지가 아니라 저도 잘 몰라서 그러는데, $category 값이 s1 일때 code1 이 나오고 아니면 code2 가 나오면 되는데 왜 불가능한 거에요?? 서버에서 처리해서 맞는 걸 전송해 주고, 나머지는 클라이언트에서 알아서 지지고 볶고 하면 될 것 같은데...
불가능할건 없지 않나요?
'-'
클라이언트 브라우저는 서버사이드 언어를 해석 할 수 없습니다.
이미 PHP의 과정을 거치고 나온 문서가 브라우저에 의해 해석 되기 때문이죠.
브라우저에서는 <?php ?> 라는 영역이 이미 출력 결과로 나타났기 때문에 전혀 상관이 없습니다.
혹시나 PHP 프로세스가 종료, 다운되는 경우가 아니면 1번 같은 코드도 사용 가능합니다.

덧, javascript는 서버사이드 클라이언트 사이드 양쪽에 다 사용될 수 있는 언어입니다^^;
가능할꺼같은데..
폼 체크라면 1번이 맞지 않네요.

폼체크는 스크립트로만 해야됩니다.

업데이트시 php로 한번더 체크해야겠지요.

폼체크가 아니라면 1번같은 경우도 쓰지요
저같은 경우는 가급적 2번의 경우를 많이 사용하려고 합니다.
1번의 경우 소스가 지저분해져서... 꼭 필요한 경우 아니면 2번으로 많이 쓸려고해요...

사람들이 javascript 가 쉽다고생각하는분이 많은데...javascript 만으로 만들어보면 얼마나 어려운 언어인지 알게되네요...
아무래도 서버 언어와 클라이언트 언어 혼용을 막기위해 2번이 낫지 않을까요?
가급적 2번 방법으로 작업해야겠네요~^^
1번으로 하는게 전송되는 코드가 적어서 좋을거같네요.
간과하는게 있네요. javascript는 공백하나 하나도 다 데이터로 인식합니다. 클라이언트 딴에서는 1번과 같이 코딩해주셔서 서버에서 한번 걸러 주시는게 옳습니다. 물론 가독성면이나 소스 정리면에서는 2번이 좋을 듯하지만요. 다운받으시는 js 파일이 왜 다 길게 붙여서 배포되는지를 생각하시면됩니다. 정식배포는 js로 하고 소스 수정은 min에서 하라는 거죠
저는 자바스크립트에서 대게 체크하는데 그렇지 않은 경우도 있습니다.
php는 서버단 javascript는 클라이언트단 이란 것만 알고 있으면
경우에 따라 잘 판단해서 하시면 문제 없을 거 같습니다.
서버의 자원을 최소화하기위해서 클라이언트 언어인 자바스크립트로 유효성 검사를 먼저 해주고 php 데이터 처리단에서 한번더 유효성검사를 해줘야 합니다.
자바스크립트는 위/변조가 쉽거든요.
이정도 상황이라면 크게 차이는 없어 보이네요.. 단지 구현하시는분의 성격상 깔끔함을 추구 한다면 2번으로 가지 않을까요? ^^;;
깔끔하게 하려면 분리하는게 좋죠
어떻게 보면 보안과 관련된 사항이긴 한데요.. 그건 때에 따라 다를것 같습니다.
방법이 너무 다양해서 ^^
switch ($category )
{
case s1:
javascript code1
break;
default:
javascript code2
}
스위츠로 한번 해봤습니다.^^
소스의 간결함으로 봤을땐.. 2번인거 같아요..
일반태그의 경우는 1번과 유사하게 사용하겠지만.. 스크립트단이 많이 지저분해질거 같네요.
우연히 지나가다..
<script type="text/javascript">
<? if($category == "s1") { ?>
jascript code1
<? } else { ?>
jascript code2
<? } ?>
</script>

이렇게 그냥 하면 되지 않나요?ㅎ
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
13-03-03 조회 6,241
13-03-01 조회 5,570
13-03-01 조회 8,312
13-03-01 조회 6,308
13-02-26 조회 3,918
13-02-26 조회 3,861
13-02-26 조회 4,759
13-02-24 조회 8,171
13-02-24 조회 4,258
13-02-24 조회 3,500
13-02-24 조회 5,315
13-02-24 조회 5,308
13-02-24 조회 4,375
13-02-24 조회 5,712
13-02-24 조회 9,400
13-02-14 조회 5,107
13-02-13 조회 9,036
13-01-29 조회 7,678
13-01-24 조회 5,027
13-01-24 조회 4,902
13-01-17 조회 4,313
13-01-16 조회 4,345
13-01-08 조회 4,397
12-12-27 조회 4,059
12-12-20 조회 1.1만
12-12-20 조회 3,381
12-12-06 조회 4,369
12-12-01 조회 4,131
12-11-28 조회 5,698
12-11-25 조회 5,404
12-10-20 조회 4,665
12-10-03 조회 4,831
12-09-26 조회 4,991
12-09-15 조회 8,443
12-09-14 조회 5,458
12-09-11 조회 3,962
12-09-10 조회 3,978
12-09-05 조회 8,859
12-08-29 조회 4,660
12-08-26 조회 3,790
12-08-23 조회 3,489
12-08-22 조회 3,574
12-08-22 조회 4,388
12-08-21 조회 3,536
12-08-20 조회 3,455
12-08-20 조회 9,258
12-08-15 조회 4,378
12-08-13 조회 3,296
12-08-11 조회 4,719
12-08-05 조회 4,563
12-08-03 조회 3,346
12-08-03 조회 4,041
12-08-02 조회 5,023
12-07-29 조회 4,131
12-07-26 조회 3,708
12-07-26 조회 3,578
12-07-22 조회 3,489
12-07-20 조회 3,324
12-07-19 조회 4,187
12-07-19 조회 3,442
12-07-16 조회 3,564
12-07-16 조회 4,485
12-07-15 조회 3,559
12-07-12 조회 7,389
12-07-12 조회 5,030
12-07-11 조회 3,076
12-07-09 조회 3,240
12-07-05 조회 3,850
12-07-04 조회 4,422
12-07-04 조회 3,827
12-07-04 조회 4,349
12-06-29 조회 3,813
12-06-27 조회 3,402
12-06-24 조회 3,880
12-06-22 조회 4,189
12-06-22 조회 8,600
12-06-22 조회 3,251
12-06-21 조회 3,285
12-06-17 조회 3,910
12-06-14 조회 4,012
12-06-14 조회 3,294
12-06-08 조회 4,441
12-06-06 조회 3,403
12-06-04 조회 4,159
12-05-26 조회 4,977
12-05-26 조회 3,932
12-05-25 조회 3,228
12-05-24 조회 3,331
12-05-22 조회 3,375
12-05-20 조회 3,003
12-05-16 조회 3,138
12-05-15 조회 3,532
12-05-10 조회 3,963
12-05-08 조회 3,486
12-05-04 조회 3,339
12-05-03 조회 4,294
12-05-02 조회 3,429
12-05-02 조회 3,204
12-05-02 조회 3,302
12-04-26 조회 3,450