DB Query 로 직접 값을 입력할때는 되는데, 값이 업데이트가 되지 않는데 잘못 입력한 내용이 있을까요?
option_value 는 화면에서 입력한 값이고, content_uid 의 {$document->uid} 는 불러온 게시글의 uid 값을 입력하는 부분입니다.
add_action('kboard_document_update', 'kboard_document_update_car_distance', 10, 4);
function kboard_document_update_car_distance($content_uid, $board_id, $content, $board, $option_key, $option_value){
global $wpdb;
if($board_id == '3'){ // 실제 게시판 id로 적용해주세요.
// $wpdb->query() 함수를 활용하시면 DB 데이터를 추가하실 수 있습니다.
$wpdb->query("UPDATE opc_kboard_board_option SET `option_value` = '{$content->option->car_current_distance}' WHERE `option_key` = 'car_current_distance' AND `content_uid` = '{$document->uid}'");
}
}
화면에서 input에 입력한 {$content->option->car_current_distance} 과 게시글에서 불러온 데이터의 uid {$document->uid} 구문이 잘못되었을까요?
만약 해당 값을 불러오는게 않되는 부분이라면 화면에서 바로 업데이트할 수 있는 방법이 있을까요?
그리고 추가 질문입니다.
1. 화면에서 입력한 값을 인식할 수 있는 코드가 있을까요?
2. 게시판이 여러개인 경우 if($board_id) == '3' && '1' 형식으로 적용해도 될까요?
3. add action 에서 글 등록 시 업데이트를 위에 코드 (kboard_document_update) 로 사용해도 되나요? 아니면 [ kboard_document_insert ] 로 적용해야할까요?
답변 부탁드립니다.
감사합니다.
안녕하세요~^^
테이블명 앞에 "wp_"는 없는걸까요? 한번 확인해보시겠어요?
그리고 남겨주신 함수안에 $document->uid 변수가 없습니다.
$document->uid 대신 content_uid로 사용해보시겠어요?
1.
문의주신 내용으로만으로는
어떤 내용인지 파악하기 어렵습니다.
더 자세히 작성해주시겠어요?
2.
여러개 게시판에 적용하시려면 아래 코드를 참고해서 코드를 수정해보시겠어요?
if(in_array($board_id, array('1', '2')))
3.
지금 남겨주신 코드처럼 kboard_document_update를 사용하셔도 됩니다.
고맙습니다.