2013-04-07 2 views
2

오케이, 아이디어는 PHP에서 if 문을 만난 적이 있지만,이 작업은 dom과의 상호 작용이 필요하므로 한 번 실행하려면 javascript가 필요하다는 것입니다. 변수가 버튼 누름시 PHP로 전달되었습니다. (그 시나리오는 아니지만 상당히 유사합니다.)런타임 후 PHP 파일에서 Javascript를 실행하십시오.

if ($button == 1){ 
    echo '<script type="text/javascript"> document.getElementById("myForm").submit(); </script>'; 
} 

그리고이 코드가 실행되기 위해서는이 조건이 충족되어야합니다. PHP if 문 안에 있어야 js로 옮길 수 없습니다. 그러나 나는 변수에 코드를 추가하고 해당 변수를 js를 통해 ajax를 통해 전달하려고 시도했지만 작동하지 않는다고 생각했습니다.

도움을 주시면 감사하겠습니다.

+4

그건 의미가 없습니다. PHP는 ** 서버 **에서 실행됩니다. AJAX 폴링 또는 웹 소켓이 필요합니다. – SLaks

+0

DOM에 의존하는 PHP 조건을 가진 일종의 모순 (Is not Is It Is ant) ​​(아약스 등은 세지 않음) ?? – adeneo

+0

버튼을 눌렀는지 확인하기 위해 JavaScript를 사용하지 않는 이유는 무엇입니까? – kdazzle

답변

1

PHP 조건이 충족 된 후 자바 스크립트를 실행하고 싶습니까? 그렇다면 :

인 myscript.php

<?php 
    $button = 1; 
    if ($button == 1){ 
     echo "submit form"; 
    } 
?> 

myScript.js SLaks, 자바 스크립트에서 PHP 실행하기 위해 할 수 없습니다 말했다으로

$.ajax({ 
    type:"POST" 
    url:"myScript.php" 
    success: function(data){ 
    if(data == "submit form"){ 
     //submits "myForm" 
     $("#myForm").submit(); 
    } 
    } 
}); 

, PHP를 실행하기 때문에 서버에서 실행되고 자바 스크립트는 클라이언트에서 실행됩니다. 이해하기 쉽게하기 위해 : 그들은 기본적으로 오직 특정 코드 만 실행할 수있는 2 개의 분리 된 "세계"입니다.

+0

그래, 그게 말이 되네, 당신의 코드에서 "누락 된 함수 선언"과 "예상치 못한 식별자"라는 오류 메시지가 나타납니다. – user831496

+0

흠, 내놔, 내 서버에 아픈 테스트. 그건 그렇고, 내가 게시 한 코드 자체로는 충분하지 않습니다. –

+0

음,'$ button' var이 맞습니까? – pietroalbini

관련 문제