2012-10-23 5 views
-2

안녕 모두 나는 시간을 선택하는 드롭 다운 메뉴를 만들고 싶다. 그리고 나는 컴퓨터의 시간을 얻으려고 자바 스크립트를 사용했다. 컴퓨터의 시간이 드롭 다운 메뉴의 값과 같으면 출력을 선택해야하는 경우 출력을 원합니다. 아래 코드 이 내 코드입니다.PHP에서 자바 스크립트 출력을 호출

<script type="text/javascript"> 
function time(){ 
var currentTime = new Date(); 
$hours = currentTime.getHours(); 
document.write($hours); 
} 
</script>  
<select> 
<?php $hr="<script>time();</script>";//calling the output from javascript 
for($i = 0; $i < 24; $i++): ?> 
<option value="<?= $i; ?>" <?if ($i==$hr) echo "selected";?> > 
<?= $i % 12 ? $i % 12 : 12 ?> <?= $i >= 12 ? ' pm' : ' am' ?> 
</option> 
<?php endfor ?> 
</select> 
+10

기본 사항부터 시작하여 PHP와 자바 스크립트 작동 방법을 배워야합니다. – zerkms

+0

PHP가 서버 측에서 해석 될 예정입니다. 클라이언트 측 (웹 사용자)이 해석하기 전에 발생합니다. 따라서 PHP가 작동하지 않습니다. JavaScript 만 사용하면 가능합니다. –

+0

이것은 끔찍한 반 패턴이다. 이것을 전혀 피하지 말아라. –

답변

1

PHP는 서버 쪽 스크립트 언어이고 Javascript는 클라이언트 쪽 스크립트 언어입니다. 사용자가 웹 페이지를 볼 때 PHP 코드가 이미 실행되었을 것입니다. 그래서 언어를 섞어서 일치시킬 수 없으며 양식 반환이나 패스 백 (XHR 포함 또는 제외)없이 PHP와 섞인 JS 출력을 사용할 수 없습니다.

0

PHP 스크립트에서 자바 스크립트를 출력하지 않는 것으로 시작합니다. 이것은 생성, 읽기 또는 유지하기가 쉽지 않습니다.

필자는 단지 내 발가락을 php로 찍었고 php에 관해서는 거의 알지 못했습니다. 그러나 사용하는 프레임 워크가 무엇인지에 따라, 뷰의 대부분을 추출해야합니다 (클라이언트 측 마크 업/스크립트) PHP 로직 밖으로. 템플릿 엔진은 친구입니다!

내가 당신이라면 codeigniter 또는 cakePHP와 같은 프레임 워크를 살펴볼 것입니다. 이들은 당신의 삶을 편하게 해줄 수 있도록 고안되었지만 시간이 지남에 따라 많은 결정에 동의하지 않을 수도 있습니다.

그런데, 나는 그것이 중요하다고 생각하고 언급 한 zerkms와 같은 기본으로 시작한다고 생각합니다. 웹 응용 프로그램의 각 계층이 어떤 책임이 있는지 알아야합니다. PHP에서 클라이언트 측 스크립트를 작성하려고 시도하는 경우에만 두통을 피할 수 있습니다.