실시간 업데이트 질문입니다.
본문
임의로 리스트를 불러왔습니다.
$sql_common = " from g5_write_db ";
// 테이블의 전체 레코드수만 얻음
$sql = " select count(*) as cnt " . $sql_common;
$row = sql_fetch($sql);
$total_count = $row['cnt'];
$listCount = $_GET['listCount'];
$listNum = $config['cf_page_rows'];
$rows = $listNum;
if($listCount){
$listNum = $listCount ;
}
$total_page = ceil($total_count / $rows); // 전체 페이지 계산
if ($page < 1) { $page = 1; } // 페이지가 없으면 첫 페이지 (1 페이지)
$from_record = ($page - 1) * $rows; // 시작 열을 구함
$sql = "select * $sql_common order by wr_id desc limit $from_record, {$listNum} ";
$result = sql_query($sql);
db불러와서
<?php for ($i=0; $row=sql_fetch_array($result); $i++) {
$bg = 'bg'.($i%2); //
$bg2 = '';
$list_num = $total_count - ($page - 1) * $rows;
$list[$i]['num'] = $list_num - $i;
if ($row['wr_9'] == 'ck'){
$bg2 = 'red';
}
?>
<tr class="<?php echo $bg?>" id="<?php echo $bg2?>">
<td class="td_chk">
<label for="chk_wr_id_<?php echo $row['wr_id']; ?>" class="sound_only"></label>
<input type="checkbox" name="chk_wr_id[]" value="<?php echo $row['wr_id']; ?>" id="chk_wr_id_<?php echo $row['wr_id']; ?>">
</td>
<td style='text-align:center;'><?php echo $list[$i]['num'] ; ?></td>
<td style='text-align:center;'><?php echo $row['wr_name']; ?></td>
<td style='text-align:center;'><?php echo $row['wr_1']; ?></td>
<td style='text-align:center;'><?php echo $row['wr_2']; ?></td>
<td style='text-align:center;'><?php echo $row['wr_3']; ?></td>
<td style='text-align:center;'><?php echo $row['wr_datetime']; ?></td>
<td style='text-align:center;' ><?php echo $row['wr_9']; ?></td>
</tr>
<?php
}
if ($i == 0) {
echo '<tr><td colspan="8" class="empty_table">자료가 한건도 없습니다.</td></tr>';
}
?>
이렇게 뿌려줬습니다.
리스트에서 a라는 버튼을 누르면
$row['wr_9'] 이 값이 실시간으로 바뀌어서 업데이트가 되어야합니다...
제가 할수있는건 f5번을 누르는것밖에..
자동으로 아니 실시간으로 업데이트되서 리스트에 뿌릴 수 있을까요? ㅠ
!-->!-->답변 1
상태가 없는 웹페이지를
상태가 있는 프로그램처럼
비동기가 그나마 나은방식인데
동기화시키고 싶으신것이라면
setTimer 를 이용해서 자동화 리프래시 하는게 가장 나을듯 합니다만
껌뻑거림이 문제가될겁니다.
페이지의 리스트를 가져오는 기능만 Ajax로 구현해서
setTimer로
해당 번호/제목(링크걸린),날짜,이름 정도만 가져와서
상단에 add하는 방식으로 구현하시는수밖에 없을듯 합니다.
답변을 작성하시기 전에 로그인 해주세요.