ajax 스크립트 질문 입니다.
본문
이제껏 잘 되다가 갑자기 안되는데
무슨 경우 일까요?
요일 클릭하면 날짜계산되서 아래쪽에 보이는 소스인데
pc에선 잘되는데 모바일만 에러가 납니다.
희한하네요..
$.ajax({
url: './ajax.day_check.php',
type: "POST",
data: {
"baesong": forderform.baesong.value,
"od_baesong_day": forderform.od_baesong_day.value
},
dataType: "text",
error: function(xhr, status, error){
alert(error);
},
async: false,
cache: false,
success : function(res){
if(res) { // 성공
$('#data').show();
var arr = res.split(",");
$('.data_result').empty();
for (var i in arr)
{
var k = Number(i) + Number(1);
$('.data_result').append("<div>" + k + "회 <span style='color:red'>" + arr[i] + "</span></div>");
}
}
}
});
ajax.day_check.php 파일 소스
<?
include_once('./_common.php');
$baesong = $_POST['baesong'];
$od_baesong_day = $_POST['od_baesong_day'];
/* 날짜저장 */
// 오늘 날짜 구하기
$today = new DateTimeImmutable();
$todayDayOfWeek = $today->format('w');
// 다음주 일요일 날짜 구하기
// 오늘이 일요일이면 오늘 날짜로 함.
$toNextSundayInterval = ( $todayDayOfWeek != 0 ) ? new DateInterval('P'.(7 - $todayDayOfWeek).'D') : new DateInterval('P0D');
$nextSunday = $today->add($toNextSundayInterval);
// 배송요일 값 파싱하기
$targetFirstShippingDayDB = [
'화요일'=>'2',
'수요일'=>'3',
'목요일'=>'4',
'금요일'=>'5',
'토요일'=>'6',
];
$targetFirstShippingDayDayOfWeek;
foreach($targetFirstShippingDayDB as $targetText => $dayOfWeek ) {
if ( substr($od_baesong_day, 0, strlen($targetText)) === $targetText ) {
$targetFirstShippingDayDayOfWeek = $dayOfWeek;
break;
}
}
// 첫번째 배송일자 구하기
$toTargetFirstShippingDayInterval = new DateInterval('P'.$targetFirstShippingDayDayOfWeek.'D');
$targetFirstShippingDay = $nextSunday->add($toTargetFirstShippingDayInterval);
// 배송일 배열 만들기
$shippingDay = $targetFirstShippingDay;
$shippingDays = [];
for($i = 0 ; $i < intval($baesong) ; $i++ ) {
array_push($shippingDays, $shippingDay);
if($baesong == '4')
$nextShippingDayInterval = new DateInterval('P7D');
else if($baesong == '2')
$nextShippingDayInterval = new DateInterval('P14D');
$shippingDay = $shippingDay->add($nextShippingDayInterval);
}
foreach($shippingDays as $index => $shippingDay) {
$i = $index + 1;
$result .= $shippingDay->format('m/d')."(".get_yoil($shippingDay->format('m/d'))."),";
}
$result = substr($result, 0, -1);
echo $result;
?>
답변 1
음.. 보니까.. 수령일 선택 했을때 제대로 읽어오지 않는것 같아요
수령일에 선택한 값이 없거나.. 문제가 있는지 모르겠네여
ajax.day_check.php 파일 소스
여기에 포스트 값이 제대로 오는지도 확인해보세요
답변을 작성하시기 전에 로그인 해주세요.