Как обновить запись базы данных на основе выбранного идентификатора
Здесь я хочу обновить колонку
memberStatus
в моей таблице пользователей на основе выбранного идентификатора. В моем заявлении foreach у меня есть кнопка activate, которую я использую для своего обновления. Проблема в том, что он не обновляется в правильной строке. Он принимает первый идентификатор, а не выбранный идентификатор. Как я могу заставить его обновить правильную запись или строку?Что я уже пробовал:
function check_view() { global $wpdb; $output .= '<table> <tr style="color: #fff; background: #08a873"> <th> Account ID</th> <th> Name</th> <th>Phone</th> <th>Email</th> <th>Referer ID</th> <th> Activate Member</th> </tr>'; $results = $wpdb->get_results("select * from $wpdb->users WHERE memberStatus = 'Not Active'"); $current_date = date('Y-m-d H:i:s'); foreach( $results as $user_data) { $startTimeStamp = strtotime($user_data->deposit_date); $endTimeStamp = strtotime($current_date); $timeDiff = abs($endTimeStamp - $startTimeStamp); $numberDays = $timeDiff/86400; // 86400 seconds in one day // and you might want to convert to integer $numberDays = intval($numberDays); $roi = $user_data->amount * 2; $amount_growth = $roi - $user_data->amount; $output .= "<tr> <td> $user_data->ID</td> <td> $user_data->user_nicename</td> <td> $user_data->Phone</td> <td> $user_data->user_email</td> <td> $user_data->refID</td> <td> <form method='post'> <input type='submit' name='submit' value='Activate' /> </form> </td> </tr>"; if($_POST['submit']) { $todate = date('Y-m-d H:i:s'); //Update Member Status $status = "Active"; $where = array('ID' => $user_data->ID); $subs = array('user_registered' => $todate, 'memberStatus'=> $status); $table_name = $wpdb->prefix."users"; $actMember = $wpdb->update($table_name, $subs, $where); if($actMember) { header("Refresh:0"); exit; } else { echo 'not'; } } } $output .= '</table>'; return $output; }
Afzaal Ahmad Zeeshan
Я не вижу, куда вы отправляете идентификатор пользователя в запросе.
Member 14649933
ID пользователя я использую в предложении where является тот же идентификатор пользователя, что я получая в мой цикл foreach. Я не уверен, что это было вашей заботой.