될똥 말똥
본문
<span id="btn_modi" value="" data-idx="<?php echo $row[idx]?>" data-mb_id="<?php echo $row[mb_id]?>" >수 정</span>
이걸 누르면 ajax로 조회해서 인풋안에 조회값이 나와야 하는데
<input id="ename3921" value="<?php echo $row[ename] ?>"></span>
뭐가 잘못된건지 안됩니다. 고수님 도움 좀부탁드릴게요.
<script>
$("#btn_modi").click(function () {
var sa_idx = $(this).data("idx");
console.log(idx); <-----------여기까진 잘나옵니다.
$.ajax({
type : "POST",
url: "../ddr/test_ajax2.php",
dataType : "text",
data: {
idx: idx
},
error:function(){
alert("error");
},
success:function(data){
$("#name").val(data.name);
$("#ename3921").val(data.ename);
}
});
console.log(ename); <----여기서는 안찍히구요
});
</script>
조회는 이렇구요
<?
include_once("./_common.php");
if(!$mb_id) $mb_id = $member[mb_id];
$sql = "select * from g5_address where idx = '{$idx}' ";
$row = sql_fetch($sql);
$row=array("name"=>$res['name'], "ename"=>$res['ename'] );
echo $row;
?>
답변 2
<script>
$("#btn_modi").click(function () {
var sa_idx = $(this).data("idx");
var ename;
console.log(sa_idx);
$.ajax({
type : "POST",
url: "../ddr/test_ajax2.php",
dataType : "json",
data: {
idx: sa_idx
},
error:function(){
alert("error");
},
success:function(data){
ename = data.ename;
$("#name").val(data.name);
$("#ename3921").val(data.ename);
}
});
console.log(ename);
});
</script>
<? → <?php 추천
<?php echo $row[idx]?>
↓
<?php echo $row['idx']; ?> ; 생략 가능
또는
<?=$row['idx']?> PHP v5.4 이상, 설정과 상관없이 항상 사용 가능
$row[mb_id], $row[ename], $member[mb_id]
↓
$row['mb_id'], $row['ename'], $member['mb_id']
등 '로 감싸기. 이유는 아래와 같습니다. PHP v8.0 이상부터는 Fatal error로 중단.
~ PHP v7.1 Notice: Use of undefined constant XXX - assumed 'XXX' in ...
~ PHP 7.4v Warning: Use of undefined constant XXX - assumed 'XXX' ...
PHP v8.0~ Fatal error: Uncaught Error: Undefined constant XXX ...
$row=array("name"=>$res['name'], "ename"=>$res['ename'] );
echo $row;
↓
$row2=['name'=>$res['name'], 'ename'=>$res['ename']]; // PHP v5.4 이상. 미만이면 위처럼 기존 스타일로. 편의상 다른 변수명 사용
exit(json_encode($row2)); // flasg - JSON_PRETTY_PRINT, JSON_UNESCAPED_UNICODE 등 추가는 자유
해결했습니다. 조회할 건을 ajax post로 날리고
sql select~~
로 한개만 불러오면 되는군요