Wordpress에서 시간 시스템으로 작업하고 사용자 정의 테이블에 삽입 할 때 wp 삽입과 관련하여 이상한 문제가 발생합니다.wpdb-> prepare()를 사용하여 사용자 정의 wp 테이블에 삽입
나는 기능을 확인하기 위해 필요에 따라 적절하게 발사되는 wp_users 테이블에 업데이트 쿼리 기능을 테스트 한 내 functions.php
function clock_in() {
if (isset($_POST['punch-in']) && '1' == $_POST['punch-in']) {
$user_id = get_current_user_id();
global $wpdb;
$wpdb->query($wpdb->prepare(
"
INSERT INTO $wpdb->wp_diss_users_sessions
(session_id,session_begin)
VALUES (%d, %s)
",
$user_id,'test'
));
에 다음 함수를 실행하고 있습니다.
다음과 같이 내가 받고 오전 오류는 다음과 같습니다
가WordPress database error: [You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version
for the right syntax to use near
'(session_id,session_begin) VALUES (2, 'test')' at line 2]
INSERT INTO (session_id,session_begin) VALUES (2, 'test')
내 표는 같은 설계 :
[session_id] - INT(11) PK NN
[session_begin] - VARCHAR(45)
내가 가장 좋은 방법은 내가 모든 구축을 위해 노력하고 준비를 사용하는 것입니다 이해 내 쿼리를 적절하게. 나는 $ wpdb-> wp_diss_users_sessions = 내 사용자 정의 테이블을 조사하는 올바른 구문을 믿는다. 어쩌면 나는 단순한 것을 간과 할 것이지만 오늘 밤에 머리가 아파요.
덕분에 모든
쿼리에 테이블 이름이 없습니다. –
당신은 이것을 읽을 수도 있습니다 : http://wordpress.org/support/topic/using-wpdb-gt-to-access-a-custom-table 기본적으로 같은 문제입니다. –