온라인예약 스킨 수정중입니다.
여기서 해당일짜에대한 쿼리를 검색을해서 결과값이 있으면
예약불가능으로 바꿔주고 싶은대 ㅠㅠㅠ
foreach문에서 sql select해서 검색값 유무를 확인하는 방법이 뭐가 있을까요.ㅠㅠ
<?php foreach($time_array[$day_type] as $k=>$v) { $time_type = "오전"; $reservation_yn = "N"; if($v >= "12:00") { $time_type = "오후"; } $v_strtotime = strtotime($currdate.$v); $now_strtotime = strtotime($nowdate.$now_hour); $test = $time_type." ".$v; //echo $test; //이부분의 값이 필요합니다...ㅠㅠㅠ3 $sql =" select count(*) from g5_write_testbm where wr_1 ='".$currdate."' and wr_2='".$test."' "; if ($v_strtotime > $now_strtotime) { $reservation_yn = "Y"; } ?> <li class="time_cls {currtime:'<?php echo $time_type." ".$v?>',reservation_yn:'<?php echo $reservation_yn?>'}"><a href="javascript:void(0);"><?php echo $time_type." ".$v?> <?php echo $reservation_yn=="Y"?"(예약가능)":"(예약불가)"?></a></li><?php }?>
부탁드립니다.ㅠㅠㅠ
답변 5개 / 댓글 5개
cal.php 와 time.php 는 무슨 기능을 하는 파일인가요?
제 생각에 구현하려는 기능이 이런거 아닐까 싶은데요
write.skin.php 에서 예약게시판이라면
1. 현재일자 + 현재시간에 예약이 되어 있으면 예약불가 메세지
현재일자 + 현재시간에 예약이 없으면 예약 처리
이런걸 원하신다면
https://sir.kr/g5_skin?sca=&sfl=wr_subject%7C%7Cwr_content&stx=%EC%98%88%EC%95%BD
다운받아 소스 분석을 하셔서 적용해 보세요
여기에서 질답으로 해결할 수 있는 내용을 넘어가는것 같습니다
예를 들어볼께요
1. write.skin.php - 예약 작성 하는 소스
2. ajax.php 또는 ajax.html - write.skin.php 에서 ajax 호출하는 파일
(예약가능 여부를 판단)
이렇게 되어 있다면
ajax.php 또는 ajax.html 에 선언하셔야 합니다.
write.skin.php 에는 이미 필요한 소스가 include 되어 있는 상태이구요
그리고 ajax.php 또는 ajax.html 에는
HTML 코드, echo, print_r 등등의 소스가 들어 있지 않는
파일을 include 하셔야 오류가 안납니다.
이러한 소스가 있으면 ajax 호출후 결과값이 제대로 리턴되지 않습니다
답변에 대한 댓글 1개
function getCal(year,month)
{
$.ajax({
url: board_skin+'/cal.php',
data: {
year : year
, month : month
, bo_table : "<?php echo $bo_table?>"
},
type: 'get',
dataType: 'html',
error: function(XMLHttpRequest, textStatus, errorThrown) {
},
success: function(response) {
$('#cal_body').html(response);
}
});
}
getCal("<?php echo date("Y",time())?>","<?php echo date("n",time())?>");
function getTime(currdate)
{
$.ajax({
url: board_skin+'/time.php',
data: {
currdate : currdate
},
type: 'get',
dataType: 'html',
error: function(XMLHttpRequest, textStatus, errorThrown) {
},
success: function(response) {
$('#time_body').html(response);
}
});
}
그래서 cal.php / time.php 에서 인클루드를 시켜주었는대도 안나오네요 ㅠㅠㅠㅠ
너무나 어렵습니다 ㅠㅠㅠㅠㅑㅐ혹댜ㅐ9혹ㄷ
DB 연결이 안되었네요
Ajax 호출하는 페이지 상단에
include_once('./_common.php');
와 같이 그누보드에서 사용하는 라이브러리가 include 하거나
따로 DB 연결 + 세션 시작.. 등등 의 내용이 들어 있는 파일을 include 해야 합니다
물론 해당 파일의 상단에 위의 내용이 들어 있는 소스를 직접 기재하셔도 되구요
500 에러면 서버오류라는 얘기인데요
1. 실행권한 or 확장자 실행오류(httpd.conf)
2. $_GET, $_POST 변수 문제
3. 소스코드 오류
주소줄에 직접 ajax 호출하는 파일경로와 변수를 입력해서 실행해 보세요
다만 해당페이지의 변수처리는 $_GET 으로 수정하셔야 겠죠?
이렇게 해당 파일을 직접호출해서 오류를 수정하신후
다시 $_GET 변수로 수정된 부분을 $_POST 로 변경하시면 됩니다
$sql =" select count(*) AS cnt from g5_write_testbm where wr_1 ='".$currdate."' and wr_2='".$test."' ";$row = sql_fetch($sql);if (isset($row['cnt']) === true && $row['cnt'] > 0) echo '예약불가';else echo '예약가능';
답변을 작성하려면 로그인이 필요합니다.
해당 스킨을 다운받아서 커스텀 하는 과정에서 ㅠㅠㅠ
기존엔 실시간과 소스상에 표시된 시간이 지나면 예약 불가능 기능만있어서
현재일자 + 예약되어있으면 예약불가를 표시하려는 기능을 추가하려고 했습니다.
데이터를 딱히 불러올방법이없어서 쿼리를 통하여 해당 일자+시간에 카운트가 되어있으면
예약불가 처리를 하려고 하였으나 ㅠㅠ sql을 뽑아오는 과정이 되지않아서 질문 하였습니다.ㅠㅠ
time.php / cal.php는
time 페이지에는 캘린더의 요일별 시간값들이 나오는 페이지이며
cal 페이지는 캘린더의 요일을 뽑아네는 페이지 입니다.ㅠ