2013-03-03 2 views
1

Я создал сценарий электронной почты, который должен обновляться, как только будет получен wp_mail. По какой-то причине мое значение не будет обновляться. Я что-то пропустил? Я получаю почту, так что wp_mail работает.wpdb update query not working

Cheers!

$email_result = wp_mail($to, $subject, $message, $headers); 

if($email_result){//wp_mail() processed the request successfully 
    global $wpdb; 
    $table_name = $wpdb->prefix . "wpsc_coupon_codes"; 
    $coupon_id = $ereminder->ID; 

$ereminders = $wpdb->query($wpdb->prepare(" 
    UPDATE * 
    FROM $table_name 
    SET reminder = 1 
    WHERE ID = $coupon_id 
")); 

} 

ответ

4

попробовать это

UPDATE $table_name 
SET reminer = 1 
WHERE ID = $coupon_id 
+0

Спасибо за комментарий. Он по-прежнему не работает (и я изменил опечатку haha, reminer = reminder) – adnan

+0

, затем проверьте '$ table_name' и' $ coupon_id', если они дают правильные значения –

+0

ahh thanks, $ ereminder-> ID должен был быть $ erimnder -> id :) – adnan

1

Вы можете изменить вместо (UPDATE * FROM)

$ereminders = $wpdb->query($wpdb->prepare("UPDATE $table_name SET reminer='1' WHERE ID=$coupon_id")); 

и не использовать без перерыва.

спасибо.

6

Попробуйте:

$wpdb->update($table_name, array('reminder' => 1),array('ID'=>$coupon_id)); 
1

Пример шахты, которая работает:

$result = $wpdb->update(
    $wpdb->prefix .'sae_calendar', 
    array( 
     'year' => $year, 
     'quarter' => $quarter, 
     'start_date' => $start_date, 
     'end_date' => $end_date, 
     'reservation_start_date' => $reservation_start_date, 
     'reservation_end_date' => $reservation_end_date 
    ), 
    array(
     "id" => $id 
    ) 
); 
-1

<?php 
 
\t global $wpdb; 
 
    if(isset($_POST['progress'])){ 
 
\t \t $table=t_test; 
 
\t \t $data=array('client_development'=>$_POST['Progress']); 
 
\t \t $where=array('p_id'=>$_SESSION['id']); 
 
\t \t $format=("%d"); 
 
\t \t $whereFormat=("%d"); 
 
\t \t $result4=$wpdb->UPDATE($table,$data,$where,$format,$whereFormat); 
 
\t } 
 
?> 
 
<form method="post"> 
 
\t \t \t \t <input type="text" name="Progress"> 
 
\t \t \t \t <input type="submit" name="progress" value="Prog%"> 
 
\t \t \t </form>

<!-- begin snippet: js hide: false console: true babel: false -->