Javascript POST가 작동하지 않음: Javascript 배열을 PHP로 전송
이 기사에서는 Javascript를 보낼 때 발생하는 어려움에 대해 설명합니다. POST 메소드를 사용하여 PHP 스크립트에 배열을 보냅니다.
사용자는 Javascript 함수를 사용하여 PHP 스크립트에 배열을 POST합니다.
<code class="js">function sendToPHP() { $.post("index.php", { "variable": toSearchArray }); }</code>
PHP 스크립트에서 배열을 수신하려고 합니다. 배열을 인쇄합니다.
<code class="php"><?php $myval = $_POST['variable']; print_r ($myval); ?></code>
이러한 노력에도 불구하고 배열이 성공적으로 전송되지 않습니다. 고려해야 할 잠재적인 원인 중 하나는 AJAX 작동 방식에 대한 오해입니다.
jQuery를 통해 구현되는 AJAX는 자동 프로세스가 아닙니다. 체계적인 구현이 필요합니다. 일반적인 작업 흐름에는 다음이 포함됩니다.
제공된 코드에서 클라이언트 스크립트에는 마지막 단계인 서버로부터 응답을 처리하는 단계가 누락되어 있습니다. 이 경우 PHP 스크립트는 단순히 배열을 인쇄하는 것입니다. 클라이언트 측에 배열을 표시하려면 응답을 처리하여 div와 같은 적절한 요소에 표시해야 합니다.
다음은 jQuery를 사용하여 이 단계를 구현하는 방법에 대한 예입니다.
<code class="js">$(document).ready(function() { $('#btn').click(function() { // Get the value from the input field var txt = $('#txt').val(); // If the input field is empty, display an error if (txt == "") { alert("Enter some text"); } else { // Send the text to the server $.post('catcher.php', { 'text': txt }, function(data) { // The response is now available in the 'data' variable // Update the UI with the response $('#response').text(data.message); }, 'json'); } }); });</code>
이 예에서는 서버의 응답이 $.post() 메서드의 콜백 함수에서 처리되며, 여기서 데이터 개체의 메시지 속성이 응답 div에 표시됩니다.
이 예제에서는 전송되는 데이터로 텍스트를 사용하지만 배열 전송에도 동일한 접근 방식을 적용할 수 있다는 점에 유의하는 것이 중요합니다. 핵심 단계는 서버의 응답이 클라이언트 측에 적절하게 처리되고 표시되는지 확인하는 것입니다.
위 내용은 내 Javascript 배열이 POST를 통해 PHP로 전송되지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!