datepicker 로 날짜지정 한 뒤 옆에 요일 표시하기 질문입니다.
본문
동적인 페이지 구성을 하기 위해서는 자바스크립트가 필수인 것 같더군요;;
그누보드에서 기본 제공되는 datepicker 로 날짜를 지정한 다음 날짜 옆에 요일이 나오게 하고 싶은데
혹시 아래 자바스크립트 코드를 PHP로 출력해 줄려면 어떻게 해야될까요?
function getWeekday(sDate) {
var yy = parseInt(sDate.substr(0, 4), 10);
var mm = parseInt(sDate.substr(5, 2), 10);
var dd = parseInt(sDate.substr(8), 10);
var d = new Date(yy,mm - 1, dd);
var weekday=new Array(7);
weekday[0]="일";
weekday[1]="월";
weekday[2]="화";
weekday[3]="수";
weekday[4]="목";
weekday[5]="금";
weekday[6]="토";
return weekday[d.getDay()];
}
여기서 getWeekday(sDate) 의 sDate 는 <input id=sDate ...> 에서 id 값을 말하는 건가요?
저게 자바스크립트 함수(function)로 되어 있어서 PHP에다가 나타내 줄려면 어떻게 해줘야할지
막막하네요...
답변 2
php 는 서버 언어이고 javascript 는 클라이언트 언어이니 말씀하신 작업은 불가능합니다.
사용자가 서버에 요청 -> 아파치 응답(php 반응후 html 생성 ) -> 사용자는 html 수신 ( javascript 동작)
이런순서라 이미 html 로 가공된후에 php 에 뭘 한다는건 말이 안되는 일입니다.
아래 소스 응용해서 해보세요.
<?php
include_once('./_common.php');
echo '<meta http-equiv="imagetoolbar" content="no">'.PHP_EOL;
echo '<meta http-equiv="X-UA-Compatible" content="IE=10,chrome=1">'.PHP_EOL;
echo '<title></title>'.PHP_EOL;
echo '<link rel="stylesheet" href="'.G5_ADMIN_URL.'/css/admin.css">'.PHP_EOL;
echo '<script src="'.G5_JS_URL.'/jquery-1.8.3.min.js"></script>';
include_once(G5_PLUGIN_PATH.'/jquery-ui/datepicker.php');
?>
<table>
</tr>
<td>
<input type="text" name="insert_date" class="datepicker"/>
<div id="datepicker_w"></div></td>
</tr>
</table>
<script> $(function(){ $(".datepicker").datepicker({ changeMonth: true, changeYear: true, dateFormat: "yy-mm-dd", showButtonPanel: true, yearRange: "c-10:c+1" }); }); </script>
<script>
$("input[name=insert_date]").on("propertychange change keyup paste input", function() {
var week = new Array('일요일', '월요일', '화요일', '수요일', '목요일', '금요일', '토요일');
console.log($('input[name=insert_date]').val());
var today = new Date($('input[name=insert_date]').val()).getDay();
console.log(today);
var todayLabel = week[today];
$("#datepicker_w").html(todayLabel);
});
</script>
<?php echo html_end(); // HTML 마지막 처리 함수 : 반드시 넣어주시기 바랍니다. ?>