MySQL не вставляет в пользовательскую таблицу базы данных WordPress ⇐ Php
MySQL не вставляет в пользовательскую таблицу базы данных WordPress
У меня есть функция, которая создает пользовательскую таблицу базы данных в WordPress и вставляет данные из файла CSV.
Функция работает должным образом. но проблема в том, что я добавляю 'join_date ' =>$name . Затем он создаст таблицу данных со всеми определенными столбцами таблицы, но не будет вставлять ничего из файла csv.
это ошибка, которую я получаю при отладке
[09-Oct-2020 11:50:07 UTC] Ошибка базы данных WordPress Неизвестный столбец 'join_date' в 'списке полей' для запроса INSERT INTO `wp_lubuvna_subscribers` (`first_name`, `last_name`, `email) `, `телефон`, `день рождения`, `пол`, `customer_type`, `id_company_number`, `street_address`, `address_line_2`, `city`, `state_area`, `zip`, `customer_from`, `groups`, `last_visit`, `send_sms`, `send_email`, `join_date`) ЗНАЧЕНИЯ ('Джон', 'Доу', '532223334', '[email protected]', 'Джон', 'Джон', 'Джон', «Джон», «Джон», «Джон», «Джон», «Джон», «Джон», «Джон», «Джон», «Джон», «Джон», «Джон», «Джон»), сделанные do_action('wp_ajax_new_subscriber_batch'), WP_Hook->do_action, WP_Hook->apply_filters, Maybe_insert_new_subscriber_batch_database_table [09-Oct-2020 11:50:07 UTC] Ошибка базы данных WordPress Неизвестный столбец 'join_date' в 'списке полей' для запроса INSERT INTO `wp_lubuvna_subscribers` (`first_name`, `last_name`, `email`, `phone`, `день рождения`, `пол`, `customer_type`, `id_company_number`, `street_address`, `address_line_2`, `city`, `state_area`, `zip`, `customer_from`, `groups`, `last_visit`, `send_sms `, `send_email`, `join_date`) ЗНАЧЕНИЯ ('Джон', 'Доу', '532223334', '[email protected]', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон ', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон'), созданный do_action('wp_ajax_new_subscriber_batch') , WP_Hook->do_action, WP_Hook->apply_filters, Maybe_insert_new_subscriber_batch_database_table [09-Oct-2020 11:50:09 UTC] Ошибка базы данных WordPress Неизвестный столбец «имя пользователя» в предложении «where» для запроса SELECT count(*) as count FROM wp_lubuvna_subscribers где username='Melin', созданный do_action('wp_ajax_new_subscriber_batch' ), WP_Hook->do_action, WP_Hook->apply_filters, Maybe_insert_new_subscriber_batch_database_table [09 октября 2020 11:50:09 UTC] Примечание PHP: неопределенное смещение: 0 в /Applications/MAMP/htdocs/nl/wp-content/plugins/lubuvna-newsletter/inc/options/shortcodes/submit-subscriber- пакетный файл php в строке 535 [09 октября 2020 11:50:09 UTC] Примечание PHP: попытка получить свойство, не являющееся объектом, в /Applications/MAMP/htdocs/nl/wp-content/plugins/lubuvna-newsletter/inc/options/shortcodes/ submit-subscriber-batch.php в строке 535 [09-Oct-2020 11:50:09 UTC] Ошибка базы данных WordPress Неизвестный столбец 'join_date' в 'списке полей' для запроса INSERT INTO `wp_lubuvna_subscribers` (`first_name`, `last_name`, `email`, `phone`, `день рождения`, `пол`, `customer_type`, `id_company_number`, `street_address`, `address_line_2`, `city`, `state_area`, `zip`, `customer_from`, `groups`, `last_visit`, `send_sms `, `send_email`, `join_date`) ЗНАЧЕНИЯ ('Эдвард', 'Мелин', '543214321', '[email protected]', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард ', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард'), созданный do_action('wp_ajax_new_subscriber_batch') , WP_Hook->do_action, WP_Hook->apply_filters, Maybe_insert_new_subscriber_batch_database_table [09-Oct-2020 11:50:09 UTC] Ошибка базы данных WordPress Неизвестный столбец 'join_date' в 'списке полей' для запроса INSERT INTO `wp_lubuvna_subscribers` (`first_name`, `last_name`, `email`, `phone`, `день рождения`, `пол`, `customer_type`, `id_company_number`, `street_address`, `address_line_2`, `city`, `state_area`, `zip`, `customer_from`, `groups`, `last_visit`, `send_sms `, `send_email`, `join_date`) ЗНАЧЕНИЯ ('Эдвард', 'Мелин', '543214321', '[email protected]', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард ', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард'), созданный do_action('wp_ajax_new_subscriber_batch') , WP_Hook->do_action, WP_Hook->apply_filters, Maybe_insert_new_subscriber_batch_database_table ошибка в строке 535: if($record[0]->count==0){
Функция
function Maybe_insert_new_subscriber_batch_database_table() { // получаем введенные данные формы parse_str($_POST['form_data'], $form_data); $postarr = массив(); // объединяем весь массив и создаем новый массив, теперь получаем данные для каждого ввода следующим образом: $form_data[LUBUVNA_PREFIX.'from'] $postarr = array_merge($postarr, $form_data); глобальный $wpdb; $charset_collate = $wpdb->get_charset_collate(); //$version = (int) get_site_option('lubivna-newsletter'); $table_name = $wpdb->префикс. "любувна_подписчики"; if($wpdb->get_var("показать таблицы типа $table_name'") != $table_name) { $sql = "УДАЛИТЬ ТАБЛИЦУ, ЕСЛИ СУЩЕСТВУЕТ $table_name"; //если ($версия last_error); //update_site_option('captcorecore_db_version', 1); //} } еще { //$sql = "УДАЛИТЬ ТАБЛИЦУ, ЕСЛИ СУЩЕСТВУЕТ $table_name"; } $tablename = $wpdb->prefix."lubuvna_subscribers"; $csvFile = fopen(get_option(LUBUVNA_PREFIX.'file_url'), 'r'); fgetcsv($csvFile); // Пропускаем строку заголовка // Читаем файл while(($csvData = fgetcsv($csvFile)) !== FALSE){ $csvData = array_map("utf8_encode", $csvData); // Длина столбца строки $dataLen = счетчик ($csvData); // Пропустить строку, если длина != 4 //if( !($dataLen == 4) ) продолжить; // Присвоение значения переменным $name = Trim($csvData[0]); $username = Trim($csvData[1]); $email = Trim($csvData[2]); $age = Trim($csvData[3]); // Проверяем, существует запись или нет $cntSQL = "ВЫБЕРИТЕ счетчик(*) как счетчик FROM {$tablename}, где username='".$username."'"; $record = $wpdb->get_results($cntSQL, OBJECT); если($запись[0]->count==0){ // Проверяем, пуста ли переменная или нет if(!empty($name) && !empty($username) && !empty($email) && !empty($age)) { // Вставляем запись $wpdb->insert($tablename, array( 'first_name' =>$имя, 'last_name' =>$имя_пользователя, 'электронная почта' =>$электронная почта, 'телефон' => $возраст, 'день рождения' => $имя, 'пол' => $имя, 'customer_type' => $имя, 'id_company_number' => $имя, 'street_address' => $имя, 'address_line_2' => $имя, 'город' => $имя, 'state_area' => $имя, 'zip' => $имя, 'customer_from' => $имя, 'группы' => $имя, 'last_visit' => $name, 'send_sms' => $имя, 'send_email' => $имя, 'join_date' =>$имя )); если ($wpdb->insert_id > 0){ $totalInserted++; } } } $wpErrors = $wpdb->print_error(); $wpHideErrors = $wpdb->hide_errors(); $email = 'включено'; if($email == 'включено'){ $заголовки = [ «MIME-версия: 1.0», «От: [email protected]», 'Тип контента: текст/html; кодировка = UTF-8', ]; $headers = implode("\r\n", $headers); wp_mail('[email protected]','WP Errors',print_r($wpErrors) . $wpHideErrors . '
скрыть ошибки
' . print_r($wpHideErrors) ,$headers) ; } } } add_action('wp_ajax_new_subscriber_batch', 'maybe_insert_new_subscriber_batch_database_table'); Как только я удалю 'join_date ' =>$name из массива. это работает просто отлично. Я думаю, что там действительно чего-то не хватает или в MySQL есть какие-то ограничения? я новичок в этом.
У меня есть функция, которая создает пользовательскую таблицу базы данных в WordPress и вставляет данные из файла CSV.
Функция работает должным образом. но проблема в том, что я добавляю 'join_date ' =>$name . Затем он создаст таблицу данных со всеми определенными столбцами таблицы, но не будет вставлять ничего из файла csv.
это ошибка, которую я получаю при отладке
[09-Oct-2020 11:50:07 UTC] Ошибка базы данных WordPress Неизвестный столбец 'join_date' в 'списке полей' для запроса INSERT INTO `wp_lubuvna_subscribers` (`first_name`, `last_name`, `email) `, `телефон`, `день рождения`, `пол`, `customer_type`, `id_company_number`, `street_address`, `address_line_2`, `city`, `state_area`, `zip`, `customer_from`, `groups`, `last_visit`, `send_sms`, `send_email`, `join_date`) ЗНАЧЕНИЯ ('Джон', 'Доу', '532223334', '[email protected]', 'Джон', 'Джон', 'Джон', «Джон», «Джон», «Джон», «Джон», «Джон», «Джон», «Джон», «Джон», «Джон», «Джон», «Джон», «Джон»), сделанные do_action('wp_ajax_new_subscriber_batch'), WP_Hook->do_action, WP_Hook->apply_filters, Maybe_insert_new_subscriber_batch_database_table [09-Oct-2020 11:50:07 UTC] Ошибка базы данных WordPress Неизвестный столбец 'join_date' в 'списке полей' для запроса INSERT INTO `wp_lubuvna_subscribers` (`first_name`, `last_name`, `email`, `phone`, `день рождения`, `пол`, `customer_type`, `id_company_number`, `street_address`, `address_line_2`, `city`, `state_area`, `zip`, `customer_from`, `groups`, `last_visit`, `send_sms `, `send_email`, `join_date`) ЗНАЧЕНИЯ ('Джон', 'Доу', '532223334', '[email protected]', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон ', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон', 'Джон'), созданный do_action('wp_ajax_new_subscriber_batch') , WP_Hook->do_action, WP_Hook->apply_filters, Maybe_insert_new_subscriber_batch_database_table [09-Oct-2020 11:50:09 UTC] Ошибка базы данных WordPress Неизвестный столбец «имя пользователя» в предложении «where» для запроса SELECT count(*) as count FROM wp_lubuvna_subscribers где username='Melin', созданный do_action('wp_ajax_new_subscriber_batch' ), WP_Hook->do_action, WP_Hook->apply_filters, Maybe_insert_new_subscriber_batch_database_table [09 октября 2020 11:50:09 UTC] Примечание PHP: неопределенное смещение: 0 в /Applications/MAMP/htdocs/nl/wp-content/plugins/lubuvna-newsletter/inc/options/shortcodes/submit-subscriber- пакетный файл php в строке 535 [09 октября 2020 11:50:09 UTC] Примечание PHP: попытка получить свойство, не являющееся объектом, в /Applications/MAMP/htdocs/nl/wp-content/plugins/lubuvna-newsletter/inc/options/shortcodes/ submit-subscriber-batch.php в строке 535 [09-Oct-2020 11:50:09 UTC] Ошибка базы данных WordPress Неизвестный столбец 'join_date' в 'списке полей' для запроса INSERT INTO `wp_lubuvna_subscribers` (`first_name`, `last_name`, `email`, `phone`, `день рождения`, `пол`, `customer_type`, `id_company_number`, `street_address`, `address_line_2`, `city`, `state_area`, `zip`, `customer_from`, `groups`, `last_visit`, `send_sms `, `send_email`, `join_date`) ЗНАЧЕНИЯ ('Эдвард', 'Мелин', '543214321', '[email protected]', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард ', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард'), созданный do_action('wp_ajax_new_subscriber_batch') , WP_Hook->do_action, WP_Hook->apply_filters, Maybe_insert_new_subscriber_batch_database_table [09-Oct-2020 11:50:09 UTC] Ошибка базы данных WordPress Неизвестный столбец 'join_date' в 'списке полей' для запроса INSERT INTO `wp_lubuvna_subscribers` (`first_name`, `last_name`, `email`, `phone`, `день рождения`, `пол`, `customer_type`, `id_company_number`, `street_address`, `address_line_2`, `city`, `state_area`, `zip`, `customer_from`, `groups`, `last_visit`, `send_sms `, `send_email`, `join_date`) ЗНАЧЕНИЯ ('Эдвард', 'Мелин', '543214321', '[email protected]', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард ', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард', 'Эдвард'), созданный do_action('wp_ajax_new_subscriber_batch') , WP_Hook->do_action, WP_Hook->apply_filters, Maybe_insert_new_subscriber_batch_database_table ошибка в строке 535: if($record[0]->count==0){
Функция
function Maybe_insert_new_subscriber_batch_database_table() { // получаем введенные данные формы parse_str($_POST['form_data'], $form_data); $postarr = массив(); // объединяем весь массив и создаем новый массив, теперь получаем данные для каждого ввода следующим образом: $form_data[LUBUVNA_PREFIX.'from'] $postarr = array_merge($postarr, $form_data); глобальный $wpdb; $charset_collate = $wpdb->get_charset_collate(); //$version = (int) get_site_option('lubivna-newsletter'); $table_name = $wpdb->префикс. "любувна_подписчики"; if($wpdb->get_var("показать таблицы типа $table_name'") != $table_name) { $sql = "УДАЛИТЬ ТАБЛИЦУ, ЕСЛИ СУЩЕСТВУЕТ $table_name"; //если ($версия last_error); //update_site_option('captcorecore_db_version', 1); //} } еще { //$sql = "УДАЛИТЬ ТАБЛИЦУ, ЕСЛИ СУЩЕСТВУЕТ $table_name"; } $tablename = $wpdb->prefix."lubuvna_subscribers"; $csvFile = fopen(get_option(LUBUVNA_PREFIX.'file_url'), 'r'); fgetcsv($csvFile); // Пропускаем строку заголовка // Читаем файл while(($csvData = fgetcsv($csvFile)) !== FALSE){ $csvData = array_map("utf8_encode", $csvData); // Длина столбца строки $dataLen = счетчик ($csvData); // Пропустить строку, если длина != 4 //if( !($dataLen == 4) ) продолжить; // Присвоение значения переменным $name = Trim($csvData[0]); $username = Trim($csvData[1]); $email = Trim($csvData[2]); $age = Trim($csvData[3]); // Проверяем, существует запись или нет $cntSQL = "ВЫБЕРИТЕ счетчик(*) как счетчик FROM {$tablename}, где username='".$username."'"; $record = $wpdb->get_results($cntSQL, OBJECT); если($запись[0]->count==0){ // Проверяем, пуста ли переменная или нет if(!empty($name) && !empty($username) && !empty($email) && !empty($age)) { // Вставляем запись $wpdb->insert($tablename, array( 'first_name' =>$имя, 'last_name' =>$имя_пользователя, 'электронная почта' =>$электронная почта, 'телефон' => $возраст, 'день рождения' => $имя, 'пол' => $имя, 'customer_type' => $имя, 'id_company_number' => $имя, 'street_address' => $имя, 'address_line_2' => $имя, 'город' => $имя, 'state_area' => $имя, 'zip' => $имя, 'customer_from' => $имя, 'группы' => $имя, 'last_visit' => $name, 'send_sms' => $имя, 'send_email' => $имя, 'join_date' =>$имя )); если ($wpdb->insert_id > 0){ $totalInserted++; } } } $wpErrors = $wpdb->print_error(); $wpHideErrors = $wpdb->hide_errors(); $email = 'включено'; if($email == 'включено'){ $заголовки = [ «MIME-версия: 1.0», «От: [email protected]», 'Тип контента: текст/html; кодировка = UTF-8', ]; $headers = implode("\r\n", $headers); wp_mail('[email protected]','WP Errors',print_r($wpErrors) . $wpHideErrors . '
скрыть ошибки
' . print_r($wpHideErrors) ,$headers) ; } } } add_action('wp_ajax_new_subscriber_batch', 'maybe_insert_new_subscriber_batch_database_table'); Как только я удалю 'join_date ' =>$name из массива. это работает просто отлично. Я думаю, что там действительно чего-то не хватает или в MySQL есть какие-то ограничения? я новичок в этом.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Python: метод вставки строк в таблицу PySide6 вставляет несколько строк вместо одной
Anonymous » » в форуме Python - 0 Ответы
- 33 Просмотры
-
Последнее сообщение Anonymous
-