2011-04-07 4 views
0

mootools에서 카운트 다운 후 mysql_query를 실행하려고하는데 어떻게해야할지 모르겠습니까? 지금까지 요소 내에서 variabla 텍스트를 출력 할 수 있지만 내부에서 PHP 코드를 실행할 수 없습니다. 누구나 아이디어가 있으십니까?mootools 요소 내에서 mysql 쿼리를 실행 하시겠습니까?

제목 없음

<body> 
<script type="text/javascript"> 

    var CountDown = new Class({ 

//implements 
    Implements: [Options,Events], 

//options 
    options: { 
    element: 'countdown', 
    start: 10, 
    finish: 0, 
    startFont: '12px', 
    finishFont: '12px', 
    onComplete: $empty, 
    duration: 1000 
}, 

//initialization 
initialize: function(options) { 
    //set options 
    this.setOptions(options); 
}, 

//get things started 
start: function() { 
    this.anim(); 
}, 

//animate! 
anim: function() { 
    this.options.element.set('text',this.options.start--); 
    var fx = new Fx.Tween(this.options.element,{ 
     duration: this.options.duration, 
     link: 'ignore', 
     onComplete: function() { 
      if(this.options.start >= this.options.finish) { 
       this.anim(); 
      } else { 
       this.fireEvent('complete'); 
      } 
     }.bind(this) 
    }).start('font-size',this.options.startFont,this.options.finishFont); 
} 
}); 





     /* usage */ 
     window.addEvent('domready',function() { 
    var cd = new CountDown({ 
    element: $('countdown'), 
    start: <?=$timer;?>, 
    finish: 0, 
    onComplete: function() { 
    // here i want to execute a mysql_query instead of output these vaiablesa s text 
    this.options.element.set('text','<?=$test1?><?=$test2?><?=$test3?>'); 

    } 
}).start(); 
    }); 
</script> 

<div id="countdown"></div> 

</body> 
</html> 

답변

1
PHP는 서버에서 실행

; MooTools는 브라우저에서 실행되는 JavaScript입니다. 서버에 HTTP 요청을 보내고 데이터베이스에 쿼리하는 PHP 코드를 실행하도록 지시하려면 ajax을 사용해야합니다. PHP 코드가 출력 한 내용이 브라우저로 다시 전송됩니다. JavaScript를 사용하여 응답을 구문 분석하고 그에 따라 DOM을 업데이트하십시오.

MooTools는 사용하기 좋은 Ajax API 인 Request을 제공하므로 배우고 사용하기를 원할 것입니다. Request.HTML and Request.JSON demos을 참조하십시오.

+0

안녕하세요. matt, 정확히 내가 전에 시도한 것입니다. Request.HTML 및 request.JSON 것은 알고 있지만 카운트 다운 후 url 호출을 구현하지 못했습니다. hello.php? variable1 = hello & variable2 = john 카운트 다운 후 어떻게해야합니까? 나는 HTML 요청을 넣으려고했으나 실패했습니다 ...하지만 mysql_query를 직접 실행하는 대신 내 테이블을 업데이트하는 파일의 url을 실행하는 것이 마음에 들었습니다 ... 어떻게 할 것입니까? 고마워요 – randy

+0

글쎄, 그게 네 질문에 대한 해답이야. 아약스를 사용하는 방법을 알아낼 수 없다면 새로운 질문을하십시오. –

2

PHP는 서버에서 실행되고 HTML을 생성합니다. 그 HTML은 클라이언트로 보내지고 클라이언트는 자바 스크립트를로드하고 클라이언트에서이를 실행합니다.

Javascript에서 PHP와 대화하는 유일한 방법은 AJAX 호출을 사용하는 것입니다. Javascript 코드에서 <?= ?>을 사용하는 것처럼 페이지가 생성 될 때 PHP와 자바 대화를 할 수 있습니다. 그러나 일단 페이지가 클라이언트에게 전송되면 AJAX가 유일한 선택입니다.

+2

나는 너의 고통을 느낀다. –

관련 문제