2016-06-30 18 views
0
<div class="row"> 
     <?php 
     global $wpdb; 
     $rows = $wpdb->get_results("SELECT id, firstname, lastname, email, phone, voucher FROM wp_offer_user", ARRAY_A); 
     foreach ($rows as $row) { 
      $rowid=$row[id]; 
      if($row[voucher] == null) { print_r ($row[id]); ?>   
       <div class="col-sm-12 tabel_voucher clearfix"> 
      <div class="col-sm-2 voucher_box clearfix"> 
       <div class="col-sm-12 col-xs-6 voucher_data_head"> 
        <span class="voucher_head">First Name</span> 
       </div> 
       <div class="col-sm-12 col-xs-6 voucher_data"> 
        <?php echo $row[firstname] ?> 
       </div> 
      </div> 
      <div class="col-sm-2 clearfix"> 
       <div class="col-sm-12 col-xs-6 voucher_data_head"> 
        <span class="voucher_head">Last Name</span> 
       </div> 
       <div class="col-sm-12 col-xs-6 voucher_data"> 
        <?php echo $row[lastname] ?> 
       </div> 
      </div> 
      <div class="col-sm-2 clearfix"> 
       <div class="col-sm-12 col-xs-6 voucher_data_head"> 
        <span class="voucher_head">Mail ID</span> 
       </div> 
       <div class="col-sm-12 col-xs-6 voucher_data"> 
        <?php echo $row[email] ?> 
       </div> 
      </div> 
      <div class="col-sm-2 clearfix"> 
       <div class="col-sm-12 col-xs-6 voucher_data_head"> 
        <span class="voucher_head">Mobile No</span> 
       </div> 
       <div class="col-sm-12 col-xs-6 voucher_data"> 
        <?php echo $row[phone] ?> 
       </div> 
      </div> 
      <div class="col-sm-2 clearfix"> 
       <div class="col-sm-12 col-xs-6 voucher_data_head"> 
        <span class="voucher_head">Register Date</span> 
       </div> 
       <div class="col-sm-12 col-xs-6 voucher_data"> 
        10/01/1991 
       </div> 
      </div> 
      <div class="col-sm-2 clearfix"> 
       <div class="col-sm-12 col-xs-6 voucher_data_head"> 
        <span class="voucher_head">Voucher</span> 
       </div> 
       <div class="col-sm-12 col-xs-6 voucher_data">    
        <form id="form-voucher"> 
         <div class="field-wrap">       
          <input type="text" name="voucher" class="offer-voucher" /> 
         </div> 
         <button name="submit" class="offer-submit">Submit</button> 
         <div class="ajax-loader"></div> 
         <div class="login-error"></div> 
        </form>   
       </div> 
      </div> 
     </div> 
     <?php   
      } 
     } 
     ?> 
    </div> 

このmy function.php。 //ユーザープロフィール更新ワードプレス用のカスタネットテーブルで結果を取得し、フォームを更新する方法

function user_voucher_form() {  
    // The $_REQUEST contains all the data sent via ajax 
    if (isset($_REQUEST)) {   
     $voucher = $_REQUEST['voucher']; 
     $id = $_REQUEST['id']; 
     global $wpdb; 
     $wpdb->update( 
      'wp_offer_user', 
      array( 
      'voucher' => $voucher // string   
      ), 
      array('id' => $id), 
      array( 
      '%s' // value1   
      ), 
      array('%d') 
      ); 
     if (is_wp_error($id)) { 
      echo "Error"; 
     } 
     die(); 
    } 
} 
add_action('wp_ajax_user_voucher_form', 'user_voucher_form'); 
add_action('wp_ajax_nopriv_user_voucher_form', 'user_voucher_form'); 

私は更新ユーザープロフィールフォームを作成しています。しかし値はdbに格納されていません...どの問題.....私はWordPress wpdbを使用しています。 結果を取得してテーブルを更新する方法...助けてください

+0

[$ wpdb](https://codex.wordpress.org/Class_Reference/wpdb)リファレンスを見てください。 – Erevald

答えて

0

get_resultsクエリが正しく表示されません。 var_dump($rows);を実行すると、$行には何がありますか?

このよう(see more query structures here)をフォーマットしてみてください。

$variable = $wpdb->get_results(
    $wpdb->prepare(' 
     SELECT `column3` 
     FROM `wp_table` 
     WHERE `column1` = %s 
     AND `column2` = %d 
     ', 
     $var1, 
     123 
    ), 
    OBJECT 
); 

はまた、あなたの更新の構造が正しく見える - しかし、$voucherが実際に更新するためのデータであることを確認し$idくださいはどこ文です:

$wpdb->update(
    wp_table, 
     array(
      'column3' => $variable, // the column to update 
     ), 
     array(
      'column1' => 123, // the first WHERE argument 
      'column2' => 'value2', // additional WHERE argument! 
     ), 
     array('%s'), // the format of the update value 
     array(
      '%d', // the format of the first WHERE argument 
      '%s' // the format of the second WHERE argument 
     ) 
    ); 
関連する問題