2011-01-26 5 views
-2

좋아, 이건 어리석은 질문처럼 보일거야. 나는 php 파일을 통해 mySQL 데이터베이스에서 생성되는 동적 인 컨텐츠를 갖는 매우 간단한 작업을 수행하려고합니다. 내가 선택한 AJAX 기능을 사용하여 다른 선택 상자를 채우는 기능을 추가하려고하면 제대로 작동하지 않습니다. 이제 당신의 생각은 코드를 볼 수있게 해주지 만 질문에는 필요하지 않습니다. 이제 내가 페이지의 PHP 부분을 제거하고 AJAX 호출이 올바르게 작동하는 PHP로 앞쪽에 채워지지 않고 곧바로 html 파일을 만들면 여기서 문제는 데이터베이스에서 동적으로 생성되는 것이 없으므로이 접근법은 없습니다. 좋은. 그래서 여기에 질문이 있습니다. AJAX는 파일이 PHP를 통해 렌더링되는 경우 작동하지 않습니까? 도움을 주셔서 감사합니다.PHP AJAX 멍청한 질문

+0

이 우스운 성 저를 용서하지만 내가 코드를 보자. 파일이 동적으로 렌더링되기 때문에 AJAX가 작동하지 않을 이유가 전혀 없습니다. – lonesomeday

+0

"질문에 필요하지 않은 이유는"왜 그것이 필요하지 않다고 생각하는지 물을 수 있습니까? – pt2ph8

답변

0

이제 질문에 대해서는 코드를 보도록하겠습니다.

여기가 잘못되었습니다. 그것은 당신에게 더 나은 대답을 제공하는 데 도움이 될 것입니다.

여기 AJAX가 파일이 PHP를 통해 렌더링되는 경우 이 아닌 질문이 있습니까?

서버 측 언어와 상관없이 작동합니다.

약간의 예 :

<?php 
header('Content-Type:text/html; charset=UTF-8'); 

$_GET = filter_input_array(INPUT_GET, FILTER_SANITIZE_STRING); 

if (isset($_GET['min']) && isset($_GET['max'])) { 
    echo rand($_GET['min'],$_GET['max']); 
    exit(); 
} 
?> 
<html> 
    <body> 
     <p id="randomtext"></p> 
     Low:<br /><input type="text" id="min" value="0" /><br /> 
     High:<br /><input type="text" id="max" value="100" /><br /> 
     <button id="randomgenerator">Generate random number</button> 
     <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script> 
     <script type="text/javascript"> 
      $(document).ready(function() { 
       // Handler for .ready() called. 
       $("#randomgenerator").click(function() { 
        $.get("./", { "min": $("#min").val(), "max": $("#max").val() }, function(data) { 
         $("#randomtext").html(data); 
        }); 
       }); 
      }); 
     </script> 
    </body> 
</html> 
+0

고마워요. 나는 일하기에 가장 까다로운 시간을 보냈지 만, 약 2 시간이 지나면 내 책상에 머리가 부딪혀서 마침내 길을 잃었습니다. 내 js skillz에서 일해야 할 것 같아. 다시 한 번 감사드립니다! –

+0

환영합니다. 행운을 빌어 요 : P – Alfred

0

자바 스크립트 구문이 올바른 경우 Ajax가 작동합니다. 내가 아는 한, 페이지가 렌더링되는 언어 (html/php/asp/cf/etc.)와 완전히 독립적입니다.

0

AJAX는 자바 스크립트를 통해 이루어집니다. 페이지에서 동적 인 내용을 제거하여 AJAX가 작동했다면, PHP가 뱉어내는 것이 자바 스크립트를 깨뜨리는 것입니다.

생성 된 (또는로드 된) HTML이 서버에서 유선으로 나가면 브라우저가 실제 PHP 스크립트인지 또는 정적 HTML 파일인지 여부를 알 수 없습니다.

0

AJAX 호출을 통해 포함 된 JS를 실행하려고하면 작동하지 않습니다. 콜백 함수를 생성하고 AJAX 성공에 콜백을 실행해야합니다.

0

는 당신이 그것을 좀 봐 ... Ajax 호출이 반환하는 내용을 추적하기 위해서 파이어 버그를 사용하는 것이 좋습니다 : http://getfirebug.com/

을 그들은 당신 PHP 스크립트를 보면, BTW, 맞다, 아마 뭔가 제동이 거기서.