javascript - 提交后联系 form7 数据插入到不同的数据库表中

标签 javascript php html wordpress mysqli

我在 wordpress 中的网站。我想自动将联系表格 7 的值发送到不同的数据库表。例如,一个是 wordpress 数据库表,另一个是 php 数据库表。我该如何解决这个问题?

最佳答案

按照以下步骤在 functions.php 中添加代码:

1) 在自定义数据库中创建自定义表

 CREATE TABLE candidate(
  id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  title VARCHAR(50)
);

2) 创建联系表 7 个字段

[text* title]
[submit "Send"]

3) 在function.php中添加以下代码

  function contactform7_before_send_mail( $form_to_DB ) {
    //set your db details
    global $wpdb;

    $form_to_DB = WPCF7_Submission::get_instance();
    if ( $form_to_DB ) 
        $formData = $form_to_DB->get_posted_data();
    $title = $formData['title'];

    /************* Insert in wordpress database ***********/
    $wpdb->insert( 'candidate', array( 'title' =>$title ), array( '%s' ) );

    /************ For Php Mysql Database (Create connection first) ********/
    $servername = "localhost";
    $username = "username";
    $password = "password";
    $dbname = "myDB";

    // Create connection
    $conn = new mysqli($servername, $username, $password, $dbname);
    // Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 

    $sql = "INSERT INTO MyGuests (title)
    VALUES ($title)";

    if ($conn->query($sql) === TRUE) {
        echo "New record created successfully";
    } else {
        echo "Error: " . $sql . "<br>" . $conn->error;
    }

    $conn->close();
}
remove_all_filters ('wpcf7_before_send_mail');
add_action( 'wpcf7_before_send_mail', 'contactform7_before_send_mail' );

关于javascript - 提交后联系 form7 数据插入到不同的数据库表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52125439/

相关文章:

javascript - 是否可以通过 Ajax 获取页面重定向信息?

javascript - React - 如何向对象添加动态键/值对?

javascript - 如何调试 "Expression Changed After It Has Been Checked"错误?

php - 选择要从 XML 导入到 mySQL 表的数据

javascript - 将内联 block 元素与 td 内的链接居中

javascript - 重新创建媒体的图像缩放

javascript - dropzone.js:如何重命名文件?

javascript - php mail() 在填写表单之前发送邮件

php - Laravel 中的数据库关系

javascript - 如何单击链接但不重新加载页面?