我在 main.php 文件中使用此表单功能,以使用Contact Form 7插件将提交的数据保存在数据库中。我需要从下面的函数中获取$lastid
值并将其传递给 query.php 以根据ID更新我的查询。怎么做?
main.php
function user_data_form( $wpcf7 ) {
global $wpdb;
$title = $wpcf7->title();
$form = WPCF7_Submission::get_instance();
if ($form) {
$data = $form->get_posted_data();
if ( $title == 'User Data' ) {
$name = $data['name'];
$email = $data['email'];
$bio = $data['bio'];
$url = $data['url'];
$wpdb->insert( $wpdb->prefix . 'user_data',
array(
'name' => $name,
'email' => $email,
'bio' => $bio,
'url' => $url
), array( '%s', '%s', '%s', '%s' )
);
$lastid = $wpdb->insert_id;
}
}
}
add_action( 'wpcf7_before_send_mail', 'user_data_form' );
define('ROOTDIR', plugin_dir_path(__FILE__));
require_once(ROOTDIR . 'query.php');
query.php
$wpdb->update( $wpdb->prefix . 'user_data',
array( 'status' => $status ),
array( 'ID' => $lastid ),
array( '%s' ), array( '%d' )
);
我尝试使用array( 'ID' => $lastid )
,但它一直返回null。