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

AJAX 동적 웹페이지 관련 질문 채택완료

dhdl52 3년 전 조회 1,878

안녕하세요. 제가 현재 PHP로 동적 웹페이지를 만들어보고있는데요.

해결이 잘 안되는 부분이 있어서 질문드립니다.

 

</p>

<p><!-- 데이터 추가 모달 --></p>

<p><div id="add_data_Modal" class="modal fade"></p>

<p>    <div class="modal-dialog"></p>

<p>        <div class="modal-content"></p>

<p> </p>

<p>            <!-- 모달 헤더 --></p>

<p>            <div class="modal-header"></p>

<p>                <button type="button" class="close" data-dismiss="modal">&times;</button></p>

<p>                <h4 class="modal-title">회의실 예약 내역 추가 및 수정</h4></p>

<p>            </div></p>

<p> </p>

<p>            <!-- 모달 바디 --></p>

<p>            <div class="modal-body"></p>

<p>                <form method="post" id="insert_form"></p>

<p>                    <label>회의 날짜</label></p>

<p>                    
</p>

<p>                    <input type="date" name="MeetingDate" id="MeetingDate" min="<?= date('Y-m-d'); ?>"></p>

<p>                    

</p>

<p>                    <label>회의명</label></p>

<p>                    <input type="text" name="MeetingTitle" id="MeetingTitle" class="form-control" />      </p>

<p>                    
</p>

<p>                    <label>회의 시작 시간</label></p>

<p>                    
</p>

<p>                    <input type="time" name="StartTime" id="StartTime" min="08:00" max="18:00" step="1800"/></p>

<p>                    

</p>

<p>                    <label>회의 종료 시간</label></p>

<p>                    
</p>

<p>                    <input type="time" name="EndTime" id="EndTime" min="08:00" max="18:00" step="1800"/></p>

<p>                    
</p>

<p>                    
</p>

<p>                    <label>회의 참가자</label></p>

<p>                    <input type="text" name="MeetingName" id="MeetingName" class="form-control" /></p>

<p>                    
</p>

<p>                    <input type="hidden" name="employee_id" id="employee_id" /></p>

<p>                    <input type="submit" name ="insert" id="insert" value="추가" class="btn btn-success" /></p>

<p>                </form></p>

<p>            </div></p>

<p> </p>

<p>            <!-- 모달 풋터 --></p>

<p>            <div class="modal-footer"></p>

<p>                <button type="button" class="btn btn-default" data-dismiss="modal">닫기</button></p>

<p>            </div></p>

<p>        </div></p>

<p>    </div></p>

<p></div></p>

<p>

 

----------------------------------------------------------------------------------------------------------------

이런식으로 우선 날짜를 입력하는 부분, 기타 다른 Text를 입력하는 부분을 만들었습니다.

 

후에 수정 화면에서도 이 모달창을 이용하고자 했는데요.

 

</p>

<p><script></p>

<p>$(document).ready(function(){</p>

<p>// 모달 창에서 수정 버튼 눌렀을 때</p>

<p>    $(document).on('click','.edit_data',function(){</p>

<p>        var employee_id = $(this).attr("id");</p>

<p> </p>

<p>        $.ajax({</p>

<p>            url:"fetch.php",</p>

<p>            method:"POST",</p>

<p>            data:{employee_id:employee_id},</p>

<p>            dataType:"json",</p>

<p>            success:function(data){</p>

<p>                $('#MeetingDate').val(data.MeetingDate);</p>

<p>                $('#MeetingTitle').val(data.MeetingTitle);</p>

<p>                $('#StartTime').val(data.StartTime);</p>

<p>                $('#EndTime').val(data.EndTime);</p>

<p>                $('#MeetingName').val(data.MeetingName);</p>

<p>                $('#employee_id').val(data.id);</p>

<p>                $("#insert").val("수정");</p>

<p>                $('#add_data_Modal').modal('show');</p>

<p>            }</p>

<p>        });</p>

<p>    });</p>

<p>});</p>

<p></script></p>

<p>

 

DB 값들 모두 다 잘 나오는걸 확인했으나, #MeetingDate 부분이 문제인것 같습니다.

-------------------------------------------------------------------------------------------------------------------

 

$('#MeetingDate').val(data.MeetingDate);

부분에서 날짜값을 가져와 표시되게끔 하려했으나, 잘 안되는것 같습니다.

 

도움 주시면 감사드립니다. 감사합니다.

 

 

 

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

답변 2개

채택된 답변
+20 포인트

tblCalendar 테이블에 MeetingDate 필드가 없거나 MeetingDate 필드의 값이 없는것 같습니다.

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

답변에 대한 댓글 2개

d
dhdl52
3년 전
우선 도와주셔서 정말 감사합니다.
tblCalendar에 MeetingDate 필드도 있고 값도 잘 들어가있는데 이상하네요,,

혹시 제가 Text 불러오는 부분인 $('#MeetingTitle').val(data.MeetingTitle); 에
$('#MeetingTitle').val(data.MeetingDate); 를 넣어줬을 때 [object Object] 가 출력되는데 이것 또한 date값이 잘못 넘어가져서 그런걸까요?
찾아보니 JSON.stringify( )로 해보면 들어있는 값이 나온다해서 해줬더니 결과값으로
{"date":"2022-04-06 00:00:00.000000","timezone_type":3,"timezone":"Asia/Seoul"} 가 출력되었고, 2022-04-06 값이 DB에 들어있는 값이 맞습니다.

DB상의 varchar(50) 형식은 잘 넘어가는데 date 형식 넘기는 부분에서 문제가 있는거라 생각됩니다!
혹시 제가 생각하고있는게 맞을까요?
레전드플랫폼
3년 전
MeetingDate가 하나의 값이 아닌거 같은데요. 결국 fetch.php에서 $row 를 json_encodegotj 넘기는거니 print_r($row); 로 $row 가 어떻게 되어있는지 확인해 보세요.

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

data.MeetingDate 가 제대로 넘어 오는지 부터 확인해보세요.

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

답변에 대한 댓글 4개

d
dhdl52
3년 전
잘 안넘어옵니다.
다른 Text처럼 넘기는게 아닌거같은데 date값은 어떻게 넘기고, 받아오는지 알려주실 수 있을까요?
레전드플랫폼
3년 전
fetch.php 안에서 json으로 내보내는 내용중 변수 MeetingDate 에 해당값을 제대로 보내주는지 확인해야죠. 어떻게 넘기고 받아오는걸 물어보시는걸 보니 "fetch.php"를 직접 만드신게 맞나요?
레전드플랫폼
3년 전
fetch.php 안에서 json으로 내보내는 내용중 변수 MeetingDate 에 해당값을 제대로 보내주는지 확인해야죠. 어떻게 넘기고 받아오는걸 물어보시는걸 보니 "fetch.php"를 직접 만드신게 맞나요?
fetch.php 소스를 보여주세요.
d
dhdl52
3년 전
넵 감사합니다.
fetch.php는 DB값을 SELECT 해오는 코드인데 다음과 같습니다. (DB IP,PW는 지웠습니다!)
이렇게 했을 때 MeetingDate를 제외한 MeetingTitle, StartTime 등 다른 값들은 모두 잘 넘어오는것을 확인했습니다!

<?php
$DB_IP = "";
$DB_ID = "";
$DB_PWD = "";
$DB_NAME = "";
$DB_ConnectInfo = array("UID"=>$DB_ID, "PWD"=>$DB_PWD, "Database"=>$DB_NAME, "CharacterSet" => "UTF-8");

date_default_timezone_set('Asia/Seoul');

$connect = sqlsrv_connect($DB_IP, $DB_ConnectInfo);

if(isset($_POST["employee_id"]))
{
$query = "SELECT * FROM tblCalendar WHERE id = '".$_POST["employee_id"]."'";
$result = sqlsrv_query($connect, $query);
$row = sqlsrv_fetch_array($result, SQLSRV_FETCH_ASSOC);

echo json_encode($row);
}
?>

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

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

로그인