无法通过html表单将当前用户名插入到定制表中

时间:2019-03-18 作者:David D\'Lima

我有一个自定义html表单,试图从中将记录插入到自定义表中。我的问题是获取当前用户名并将该值插入到自定义表中。当用户单击Submit按钮时,应触发下面的代码。这是我的php代码:

<?php>
session_start;
require_once "wp-load.php";
require_once "dbconfig.php";
global $wpdb, $current_user;
$current_user=wp_get_current_user();
$table_name="persons";
$wpdb->insert( $table_name, array(
              \'first_name\' => $_POST[\'first_name\'],
              \'last_name\'  => $_POST[\'last_name\'],
               \'email\'     => $_POST[\'email\'],
               \'telephone\' => $_POST[\'telephone\'],
               \'user_name\' => [$current_user]
               )
          );
?>
非常感谢您的帮助。已经为此工作了几个小时,无法找到解决方案。

提前谢谢。

2 个回复
SO网友:mrben522

wp_get_current_user 返回aWP_User 对象你需要把名字从中去掉才能发送出去试试$current_user->display_name 在insert语句中。请注意,您绝对不应该将未经初始化的用户输入数据插入到数据库中。请查看SQL注入和输入清理。

SO网友:David D\'Lima

以下是将用户名插入自定义表的代码:

$current_user=wp_get_current_user();
$current_username = $current_user->user_login;

相关推荐

WordPress插件php文件处理表单

我试图分析一个插件操作,有时我们会填写一个要处理的表单,但我不知道表单是由谁处理的,因为我有这种html表单,所以我想知道如何知道处理真正我的表单的最终php文件。 <form method=\"post\" action=\"<?php echo esc_url( admin_url( \'admin- post.php\' ) ); ?>\"> <input type=\"hidden\" name=\"action\" v