ajax로 mysql 데이터를 변수에 담아오기 채택완료
타버린나무
2년 전
조회 1,948
</p>
<p><script>
// ajax.php
// DB에서 불러온 데이터를 A_1, A_2 ..... 데이터를 변수에 넣고 싶습니다.</p>
<p> $.ajax({
url: "sql.php",
type: "post",
async:false,
data : ({ act: "A_restart", pid:pid }),
success: function (data) {
A_1 = data['A_1']; // A_1 필드 데이터를 A_1 변수에 담기
}
})</p>
<p></script></p>
<p>
</p>
<p><?php
// sql.php</p>
<p>$act = $_POST['act'];</p>
<p> if ($act =='A_restart') {
$sql = "SELECT * FROM `test` WHERE `PID` = {$fetch['PID']}";
$fetch = sql_fetch($sql);
return;
}</p>
<p>?></p>
<p>
sql.php 에서 데이터를 가지고 와서 변수에 담고 싶습니다.
검색을 해봤지만 당체 모르겠습니다. 위 코드는 뇌피셜로 적어본겁니다.
댓글을 작성하려면 로그인이 필요합니다.
답변 3개
채택된 답변
+20 포인트
마르스컴퍼니
Expert
2년 전
※ https://codeanddeploy.com/blog/php/how-to-return-json-response-in-php-mysql-using-ajax-and-jquery
<script>
$.ajax({
url : "sql.php",
type : "post",
async : false,
dataType : 'json',
data : ({ act: "A_restart", pid:pid }),
success: function (data) {
response = JSON.parse(data);
alert(response.A_1);
alert(response.A_2);
}
})
</script>
<?php
include_once "common.php"; //그누보드 루트의 common.php</p>
<p> </p>
<p>$act = $_POST['act'];</p>
<p>if ($act =='A_restart') {
$sql = "
SELECT *
FROM `test`
WHERE `PID` = {$fetch['PID']}
";</p>
<p> $row = sql_fetch($sql);
echo json_encode($row);
}
?>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 2개
�
타버린나무
2년 전
�
마르스컴퍼니
2년 전
https://sir.kr/g5_tip/16118
댓글을 작성하려면 로그인이 필요합니다.
2년 전
DB 에서 데이터를 자바스크립트 변수로 받아 올때는 아작스 필요없습니다.
<?php $A_1 을 불러오는 코드; ?>
<script>
A_1 = "<?php echo $A_1; ?>";
</script>
html 로 작접 표현하려면
<?php $A_1 을 불러오는 코드; ?>
<div><?php echo $A_1; "?></div>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
�
타버린나무
2년 전
예.. 이렇게 하면 다음줄에서 if(pid=='' ) { A_1 = 1 } 같은 항목이 들어가 도 말씀하신 코드가 우선? 되더군요..
댓글을 작성하려면 로그인이 필요합니다.
2년 전
</p>
<p><script>
// ajax.php
// DB에서 불러온 데이터를 A_1, A_2 ..... 데이터를 변수에 넣고 싶습니다.</p>
<p> var A_1 = null;</p>
<p> var pid = 123;
$.ajax({
url: "sql.php",
type: "post",
async:false,
data : ({ act: "A_restart", pid:pid }),
success: function (data) {</p>
<p> try {</p>
<p> data = JSON.parse(data);</p>
<p> if (data != null && data['A_1'] != null) {
A_1 = data['A_1']; // A_1 필드 데이터를 A_1 변수에 담기</p>
<p> }</p>
<p> } catch (err) { console.error(err); }
}
})
</script></p>
<p>
</p>
<p><?php
// sql.php</p>
<p>$output = ['A_1' => null];</p>
<p>
$act = isset($_POST['act']) ? $_POST['act'] : '';</p>
<p>$pid = isset($_POST['pid']) ? $_POST['pid'] : '';
if ($act =='A_restart') {
$sql = "SELECT * FROM `test` WHERE `PID` = {$pid}";
$fetch = sql_fetch($sql);</p>
<p> if (empty($fetch['A_1']) === false) {</p>
<p> $output['A_1'] = $fetch['A_1'];</p>
<p> }
}</p>
<p> </p>
<p>echo json_encode($output);
?></p>
<p>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
�
타버린나무
2년 전
답변 감사합니다.
POST http:...... 500 <Internal server Error 에러가 나는데... 한번만 더 봐주실수 있을까요..
* 위 에러는 제가 if문 안에 복사해 넣었더니 에러 난거네요.
그래도 수정하고 했지만 데이터값을 불러오질 못하네요
POST http:...... 500 <Internal server Error 에러가 나는데... 한번만 더 봐주실수 있을까요..
* 위 에러는 제가 if문 안에 복사해 넣었더니 에러 난거네요.
그래도 수정하고 했지만 데이터값을 불러오질 못하네요
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
dataType : 'json', 이부분을 지우면 잘 동작합니다. 감사합니다