信息未保存到WP插件中的数据库

时间:2015-01-27 18:07:32

标签: php mysql wordpress

我的wordpress插件有问题。我正在尝试将信息添加到数据库(mySQL),但它尚未保存。我不知道为什么,我有代码,我认为这是正确的,但显然它有问题。谢谢你的阅读!

UI

Info I typed in "John" not getting saved to DB!?


这是我的代码

添加人名

的界面
function render_add_person {
        if (!current_user_can('fp_control_form')) {
            wp_die(__('Access denied.', fp_person ));
        }
        $uicreate .= "<form id='fp-person-fm'>\n";
        $uicreate .= "<p><input type='text' id='person-nm' name='perosn-nm' value='' /> ";
        $uicreate .= $this->add_wrap(__('Submit Name', fp_person),"<button class='cc-btn one'>", "</button></p>");
        $uicreate .= "</form>\n";


        echo($uicreate);
    }

插入数据库代码

// Insert to db
    function db_add_person($person) {
        global $wpdb;
        $output = $wpdb->insert($wpdb->prefix . fp_person_tbl,
                                array('p_name'  => $input->person
                                ),
                                array('%s')
                                );
        if ($this->return_result($output)){

            $input->id = $wpdb->insert_id;


            $this->ren_person($person);
        }
    }

渲染人

function ren_person($person){
        $output = array(
            'id'            => $person->id,
            'p_name'    => $input->p_name
         );


        $this->render_json($output);
    }

为什么这段代码不起作用?对不起,很长的问题!

1 个答案:

答案 0 :(得分:1)

我会将其转化为答案。

$output = $wpdb->insert($wpdb->prefix . fp_person_tbl,

此行应该会导致您遇到问题。表名必须用引号括起来。

$output = $wpdb->insert($wpdb->prefix . 'fp_person_tbl',

这应该有效。

要回答你的问题,没关系,单身或双人都可以在这种情况下工作。我选择单曲只是因为我没有按SHIFT键来键入它们。 :)一方面没有优势。

如果之后仍然无法正常工作,那就让我们重温一下吧。

HTH,

= C =