배열 / 반복문 관련
본문
그누보드5로 예약시스템을 만들기 위해
1. 관리자가 예약이 불가능한 시간을 지정(날짜선택 + 장소선택 + 불가시간선택(배열))
ex) wr_1 = 20221112, wr_2 = '장소1', wr_3 = '8:00~9:00|9:00~10:00|10:00~11:00'
2. 반복문으로 돌아가는 테이블에 아래와 같이 불가능한시간이 있을경우 예약불가를 표시하고,
onclick문을 다르게 작동.(onclick='false'로 리턴)
이런 기능을 만들었는데 사진에 체크된 시간대의 8:00~9:00 시간만 원하는대로 들어가고 9:00~10:00 부터 아래까지는 onclick이 구분이 안되네요ㅠㅠ 코드상에 어떤 부분이 수정이 필요한지 고수님들께 질문드립니다...
시간 비교를 위한 코드입니다.
$chk_sql = "select * from g5_write_".$bo_table." where wr_1 = '$write[wr_1]' and wr_4 = '$coat_result' and wr_7 = '$time'";
$result = sql_fetch($chk_sql);
// 체크박스로 예약불가를 배열저장된 시간 가져오기
$checkbox_time = sql_Fetch("select select_time from g5_coat_holiday where select_date = '$write[wr_1]' and select_coat = '$coat_result'");
// 배열로 저장된 예약불가 시간 분할
$chkbox_time = explode('|', $checkbox_time['select_time']);
// 배열로 저장된 예약불가 시간 개수 지정
$chkbox_count = count($chkbox_time);
아래는 화면에 출력되는 부분입니다!!
<td <?php
if(!$result['wr_subject']){ for($k=0; $k<=$chkbox_count; $k++){ if($time == $chkbox_time[$k]){ ?>onclick='' class='denine'<? } else{ ?>onclick="javascript:fn_submit('<?php echo $coat_result?>', '<?php echo $time ?>');" <?php } } ?><? } else{ echo "class='resesrved' "; } ?>>
<?php
if($result['wr_subject']){
if($member['mb_id'] == 'admin' || $result['mb_id'] == $member['mb_id']){
echo "<a href='".G5_BBS_URL."/board.php?bo_table=$bo_table&year=$year&month=$month&wr_id=$result[wr_id]&sc_no=$sc_no'>";
echo $result['wr_subject'];
echo "</a>";
if($result['wr_9'] == "Y"){
echo '<img src="/img/i_paid.png" alt="결제완료" />';
}
}
else{
//echo cut_str($result['wr_subject'], 2, "*");
echo iconv_substr($result['wr_subject'], 0, 1, "utf-8");
echo "*";
echo iconv_substr($result['wr_subject'], -1, 3, "utf-8");
}
}
else{}
// 현재 출력할 시간과 배열로 가져온 시간 비교하여 시간이 있을 경우 disabled 처리
for($k=0; $k<=$chkbox_count; $k++){
if($time == $chkbox_time[$k]){
echo "예약불가";
}
}
?>
</td>
답변 2
전체 코드가 있어야할 것 같은데요??
$coat_result 코트값 별로 불러와서.. 화면에 출력하고 있나요??
한번에 모든 코트별, 시간대별 배열에 전체 true, false 값을 저장하고..
출력 부분에서 이를 비교해서 출력해야할 것 같습니다.
답변 감사드립니다.다른 방법으로 진행하였습니당...
클래스명은 이상하게 원하는대로 잘 들어가서 jquery 중에 not() 구문을 사용하여
클래스명이 안들어간 항목에 onclick을 attr하는 방향으로 진행하였습니다!!
답변을 작성하시기 전에 로그인 해주세요.