通过admin-post.php提交表单时,wpdb未定义

时间:2017-09-29 12:51:47

标签: php wordpress forms

我正在尝试处理我添加到帖子中的表单,使用我制作的插件,但我一直有错误说wpdb未定义。我不明白,因为我发送表格到admin-post.php然后通过钩子调用我的PHP函数....这是我如何调用admin-post.php:

<form action="<?php echo esc_url( admin_url('admin-post.php') ); ?>" method="post">
<input name="action" type="hidden" value="partage_form">

现在插件中的代码

add_action( 'admin_post_nopriv_partage_form', 'partage_to_db' );
add_action( 'admin_post_partage_form', 'partage_to_db' );

function partage_to_db(){
global $wpdp;
$lang_string="";
foreach ($_POST["langues_group"] as $langue){
    $lang_string.=$langue . ",";
}
$lang_string = substr($lang_string, 0, -1);

$wpdb->query( $wpdb->prepare("INSERT INTO partages (
    TITRE_PARTAGE,
    ETABLISSEMENT_PARTAGE,
    SITE_WEB_PARTAGE,
    RESSOURCE_PARTAGE,
    COURRIEL_PARTAGE,
    CATEGORIE_PARTAGE,
    DATE_CREATION_PARTAGE,
    DATE_DEPOT_PARTAGE,
    IMAGE_PATH_PARTAGE,
    FICHIERS_PATH_PARTAGE,
    LIEN_PARTAGE,
    DESCRIPTION_LIEN_PARTAGE,
    LANGUES_PARTAGE,
    MOTS_CLES_PARTAGE)
  VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)", 
  $_POST["titre_partage"],
  $_POST["etablissement_partage"],
  $_POST["site_web_partage"],
  $_POST["ressource_partage"],
  $_POST["courriel_partage"],
  $_POST["categorie_partage"],
  $_POST["date_creation_partage"],
  $_POST["date_depot_partage"],
  $_POST["image_partage"],
  $_POST["fichiers_partage"],
  $_POST["lien_partage"],
  $_POST["description_lien_partage"],
  $lang_string,
  $_POST["mots_cles_partage"]));
}

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

在你的函数的第一行修复此拼写错误。

function partage_to_db()
{
    global $wpdb;  // Was $wpdp before