ajax 데이터 전달에 관한 문의
본문
//t.php
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
A_id = 1;
B_id = 2;
B_nick = 'test';
pid = 123;
$.ajax({
url: "tAjax.php",
type: "post",
async:false,
data : ({ act: "test", A_id:A_id, B_id:B_id, B_nick:B_nick, pid:pid }),
success: function (data) {
console.log('ajax msg: ' + data);
}
})
</script>
//tAjax.php
// 변수 정리
$act = $_POST['act'];
// test
if ($act =='test') {
echo '??? : ' . $A_id . ' B: '. $B_id . ' PID: ' . $pid . ' B_nick: ' . $B_nick .'???';
}
?>
위 두 파일을 만든후 실행해보면
??? : 1 B: 2 PID: 123 B_nick: test???
결과값이 정상적으로 나옵니다.
결과값이 undefined 로 나와야 하는거 아닌가요?
저절로 A_id 같은 인수명을 $A_id 같은 변수명으로 사용하나요?????
!-->!-->
답변 1
$_POST['A_id'] 식으로 값이 넘어오지만
php.ini register_globals 값이 on으로 돼 있거나
@extract($_GET);
@extract($_POST);
@extract($_SERVER);
php extract 함수를 통해서 그냥 사용할수 있게됩니다.
참고로 그누보드에서는 변수를 그냥 쓸수 있게
common.php 파일에서 위에 처럼 extract 처리를 해주고 있습니다.
답변을 작성하시기 전에 로그인 해주세요.