2013-02-19 1 views
1

빠른 배경 :
워드 프레스 플러그인 사용자 정의, 데이타베이스 쿼리 (SQL의 UPDATE의 SET)

  • CRUD 플러그인
  • WP 3.5
  • 내 개인적인 지식이 플러그인을 만들기 - 확실 해요 하나는 이미 존재합니다.
  • 변수가 에코 아웃됩니다.
  • 플러그인 생성 부분은 쿼리를 작동시키기 위해 3 시간의 연구가 필요했습니다. 코덱스에서 모든 것을 시도해 보았습니다. 스택 오버플로 (Stack Overflow)에서 뭔가 효과가있을 때까지 몇 가지 답변이있었습니다.

문제점 :

  • 정의 테이블의 행을 갱신.
  • 이 쿼리는 SQL에서 작동 ->

    업데이트 wp_current_issue의 SET issue_year = 9999, issue_month = 29 WHERE ISSUE_ID = 17;

는 시도 :

global $wpdb; 
$wpdb->update(CURRENT_ISSUE_TABLE, 
     array(
      'issue_year' => $issue_year, 
      'issue_month' => $issue_month 
      ), 
     array('issue_id' => $issue_edit_id), 
     array('%d','%d'), 
     array('%d')); 

을뿐만 아니라 (과 및 열 이름 주위 역 따옴표없이)

global $wpdb; 
$sql = $wpdb->prepare("UPDATE wp_current_issue SET issue_year=".$issue_year.", issue_month=".$issue_month." WHERE issue_id=".$issue_edit_id); 

$wpdb->query($sql); 

는 이제 재미있는 점은, 내가 같은 일을 겪었 INSERT INTO 문을 사용하십시오. 모든 것을 시도했다. 작동 할 수있는 것은 다음과 같습니다.

 global $wpdb; 

    $sql = $wpdb->prepare(
     "INSERT INTO `".CURRENT_ISSUE_TABLE."` (`issue_path`,`issue_img_path`,`issue_year`,`issue_month`) VALUES (%s,%s,%d,%d)", $fileName_issue, $fileName_img, $issue_year, $issue_month); 

    $wpdb->query($sql); 

누구나 업데이트 구문에 대해이 쿼리를 어떻게 다시 쓸 수 있는지 알고 싶습니다.

답변

1

당신은 그럼 그냥

$sql = $wpdb->prepare(
"UPDATE `".CURRENT_ISSUE_TABLE."` SET `issue_path` = %s, `issue_img_path` = %s, `issue_year` = %s, `issue_month` = %s 
    WHERE issue_id = %i", $fileName_issue, $fileName_img, $issue_year, $issue_month, $issue_edit_id); 

나머지는 동일 사용 업데이 트에 그 인서트를 다시 작성하려면 내가 정확하게 문제를 이해 가정.

+0

불행히도 해당 쿼리에 주사위가 없습니다. 그러나 나는 중요한 변수 -> 정수 변수 ... % i를 배웠다. 나는 그것을 어떻게 알지 못했습니까? 빠른 답장을 보내 주셔서 감사합니다. – TheWozJesse

+0

이것은 절대적으로 효과가있었습니다. 귀하의 회신에 대한 저의 이전 해산을 용서하십시오. 그것은 모든 형태의 문제였습니다. 나는 그것에 빈 행동을 남겼다. 신참 물건. 그 문제를 일찍 직면하고 즉시 WordPress 쿼리 구문이라고 생각했습니다. 다시 한번 감사드립니다! – TheWozJesse

+0

문제 없습니다. 도와 드리겠습니다. –

관련 문제