Данные не вставляются в пользовательскую таблицу с кодом в functions.php - PullRequest
0 голосов
/ 11 апреля 2019

У меня есть пользовательская HTML-форма в WordPress, которая вставляет данные в пользовательскую таблицу. Я написал код в файле functions.php для вставки данных.

HTML-код указан ниже:

<form id="regForm" method="POST" action="">

Моя функция PHP выглядит следующим образом:

function xx_data_insert() {
    session_start();
    require_once "wp-load.php";
    require_once "dbconfig.php";
    global $wpdb, $current_user;

    $current_user = wp_get_current_user();
    $table_name = 'xx_table';

    //Form variables defined too many to add here
    //insert statement
    $flag = $wpdb->query( $wpdb->prepare(
        (field1,field2,field3) VALUES(%s,%s,%s)",
        $field1, 
        $field2, 
        $field3
    ));

    if ($flag) {
        echo "<script>";
        echo " alert('Data saved successfully');
            window.location.href='".site_url('http://xxx/xxx')."';
            </script>";
        exit();
    }

    if( isset($_POST['submit']) ) xx_data_insert();

Когда нажата кнопка отправки, ошибки нет. Страница просто обновляется. Как я могу проверить, идет ли код даже в оператор if? Любой способ поймать в ловушку?

David

1 Ответ

0 голосов
/ 11 апреля 2019

$ flag = $ wpdb-> query ($ wpdb-> prepare ( (field1, field2, field3) VALUES (% s,% s,% s) ", $ Field1, $ Field2, $ field3 ));

отметьте это (field1, field2, field3) VALUES (% s,% s,% s) ", начальная кавычка отсутствует

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...