테스트 사이트 - 개발 중인 베타 버전입니다

javascript, PHP간 변수 사용 채택완료

CtrlV 2년 전 조회 15,942

javascript나 php에서 각자의 변수를 사용하는건 알겠는데

중간 혼용은 어떻게 해야 할까요?

 

예를들어 ajax를 통해 받은 data값을

 

같은 자바스크립트 안에서 ajax에서 받은 값을 php 함수로 돌려 사용하고 싶습니다.

 

$.ajax({

.........

                success: function(data) {

여기로 넘어온 data값을

result = data;  //// result 라는 변수에 data값을 담고...

    }

});

 

같은 자바스크립트 안에서

var value = <?php echo AAA('result') ?> 

 

위의 ajax에서 정의된 result를 php의 AAA 함수에 넣고 나온결과를 value라는 자바스크립트 변수에 담고 싶습니다.

 

댓글을 작성하려면 로그인이 필요합니다.

답변 4개

채택된 답변
+20 포인트
2년 전

ajax 처리하는 php 파일에서 AAA 함수까지 실행한 뒤 값을 리턴하는 게 간편해 보입니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

지름신2
2년 전

var variable = '<?php echo $val; ?>';

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

자바스크립트와 PHP를 혼용하여 작업하기 위해서는 AJAX를 통해 받은 값을 다시 서버로 보내고,

서버에서 PHP 함수를 호출하여 결과를 다시 자바스크립트로 전달해야 합니다.

아래는 예시 코드입니다.

</p>

<p>$.ajax({

  url: 'your_php_file.php',

  type: 'POST',

  data: { data: data }, // AJAX로 받은 값을 서버로 다시 전송합니다.

  success: function(response) {

    // 서버에서 받은 결과(response)를 처리합니다.

    var value = response; // 받은 결과를 자바스크립트 변수에 할당합니다.

    // 이후에 필요한 작업을 수행합니다.

    // ...

  }

});</p>

<p>

위의 코드에서 'your_php_file.php'는 데이터를 처리할 PHP 파일의 경로입니다. AJAX로 받은 값을 다시 서버로 전송할 때, data 키에 원하는 변수명을 설정하여 값을 보낼 수 있습니다.

이제 PHP에서 AJAX로 받은 값을 처리하고, 그 결과를 다시 자바스크립트로 전달하는 방법을 보여드리겠습니다.

</p>

<p><?php

// your_php_file.php</p>

<p>// AJAX로부터 전달받은 데이터를 가져옵니다.

$data = $_POST['data'];</p>

<p>// 데이터 처리를 수행합니다.

$result = AAA($data); // AAA 함수를 호출하여 결과를 얻습니다.</p>

<p>// 결과를 자바스크립트로 전달하기 위해 JSON 형식으로 변환합니다.

echo json_encode($result);

?></p>

<p>

위의 PHP 코드는 'your_php_file.php' 파일에서 사용될 예시입니다. AJAX로부터 전달받은 데이터는 $_POST['data']로 접근할 수 있습니다. 데이터를 처리한 후에는 결과를 JSON 형식으로 변환하여 echo 문을 사용하여 출력합니다.

그러면 자바스크립트의 AJAX success 함수에서 받은 결과를 자바스크립트 변수로 할당할 수 있게 됩니다.

</p>

<p>success: function(response) {

  var value = response; // 받은 결과를 자바스크립트 변수에 할당합니다.

  // 이후에 필요한 작업을 수행합니다.

  // ...

}</p>

<p>

이제 AJAX를 통해 받은 값을 PHP 함수에 넘기고,

PHP에서 처리한 결과를 다시 자바스크립트로 전달하는 과정을 거치게 됩니다.

챗GPT 답변입니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

s
2년 전

$.ajax는 비동기함수라, 순차적으로 실행하기 어렵습니다.

때문에 result값을 받은 다음 다시 ajax요청을 보내고 AAA('result') 의 결과를 가져와 value변수에 저장하여야 합니다.

그러니 $.ajax를 사용하지 않고 순차성로직을 구현할수 있고 님이 바라는대로 될수 있을거 같습니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인