$ wpdb-> вставка вставки двух строк в базу данных

Привет, я пытаюсь вставить данные в базу данных, но $ wpdb-> insert insert две строки.

мой код для данных вставки

global $wpdb; $tablename = $wpdb->prefix . '<TABLE NAME>'; for ($i = 0; $i < sizeof($emails); $i++) { $data = array("post_id" => $post_id, "user_id" => $user_id, "email" => $emails[$i], "status" => 1 ); $wpdb->insert($tablename, $data); } 

размер $ email составляет 1 (если я вставляю один идентификатор электронной почты).

Где я делаю ошибку, пожалуйста, дайте мне знать.

Solutions Collecting From Web of "$ wpdb-> вставка вставки двух строк в базу данных"

Попробуйте что-то вроде этого

 function insert_data_into_table () { global $wpdb; $table_name = $wpdb->prefix . "your_table_name"; //Check if table exists if($wpdb->get_var("show tables like '$table_name'") != $table_name) : //if not, create the table $sql = "CREATE TABLE " . $table_name . " ( (...) ) ENGINE=InnoDB;"; require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); dbDelta($sql); else: foreach($emails as $mail): $insert = "INSERT INTO " . $table_name . " (post_id, post_id, email, post_id) VALUES ($post_id, $user_id, email['content'], 1);" $results = $wpdb->query( $insert ); endforeach; endif; } 

Я предполагаю, что $email – это массив, содержащий некоторые данные? Если вы хотите сохранить весь массив, вы должны serialize() массив.