WordPress中的自定义表单并将值存储到自定义数据库中

时间:2014-10-06 07:02:53

标签: mysql wordpress forms

我的WordPress网站中有一个包含2个文本字段的简单表单。我创建了一个新的页面模板并添加了以下HTML代码:

这是HTML:

<form action="<?php the_permalink(); ?>" id="customform" method="post">
Field 1: <input type="text" name="field1" id="field1">
Field 2: <input type="text" name="field2" id="field2">
<input type="submit" name="submit" id="submit">
</form>

现在我想要实现的是,无论用户输入什么,它都会将其存储到mySQL与WordPress 在同一个数据库中),在表{{1例如。

我如何实现这一目标?

2 个答案:

答案 0 :(得分:5)

您可以通过以下代码执行此操作:

<?php
    include_once($_SERVER['DOCUMENT_ROOT'].'/wordpress/wp-config.php');

    $field1 = $_POST['field1'];
    $field2 = $_POST['field2'];
    global $wpdb;
    $wpdb->query(
        $wpdb->prepare("INSERT INTO wp_test_form ( field1, field2 ) 
            VALUES ( %d, %d)",$field1,$field2)
    );      
?>

注意:使用名为 wp_test_form 表格进行测试。您可以添加自己的表名称。它适用于整数值。如果您需要字符串,请将%d更改为%s

答案 1 :(得分:1)

试试这个,它会对你有帮助。

  $field1   =   $_POST['field1'];
  $field2    =   $_POST['field2'];
  $page_one_table = 'test_form';
  $page_one_inputs =  array(
  'field1' => $field1,
  'field2' => $field2
  );
//  Insert the data into a new row
  $insert_page_one  =   $wpdb->insert($page_one_table, $page_one_inputs);
  //    Grab the ID of the row we inserted for later use
$form_id = $wpdd->insert_id;