/ / wp plugin personalizado db inserir dados - wordpress-plugin

wp plugin personalizado db insert data - wordpress-plugin

Estou tentando desenvolver um plug-in personalizado no word-press. Eu criei um formulário que chama o seguinte script:

<?php
global $wpdb;
$sql="insert into wp_wbp_unpublished values(null,"".$_POST["bibkey"]."",
"".$_POST["author"]."","".$_POST["title"]."","".$_POST["date"]."","".$_POST["note"]."",
"".$_POST["keywords"]."","nothing");";
echo $sql;
//$wpdb->show_errors();
$wpdb->insert("wp_wbp_unpublished",array("uid"=>null,"pid"=>$_POST["bibkey"],
"author"=>$_POST["author"],"title"=>$_POST["title"],"year"=>$_POST["date"],
"note"=>$_POST["note"],"keyword"=> $_POST["keywords"],"abstract"=>"null"));
$wpdb->query($sql);
//$wpdb->print_error();
?>

Como você pode ver, tentei duas maneiras diferentespara inserir dados no meu db, mas nada funcionou. A string sql está correta, eu verifiquei. Mas algo errado com os comandos insert () / query (). Alguma sugestão do que está errado?

Respostas:

0 para resposta № 1

Honestamente, não vejo nada de errado com o seucódigo. No final do dia, eu sempre culpo o Wordpress pelo fato de ele ser péssimo. Estou tendo o mesmo problema, exceto somente depois que o usuário faz logon no arquivo de índice e tenta fazer alterações no db. Por que ninguém respondeu a esta pergunta?


0 para resposta № 2

Você precisa remover ponto e vírgula (); na sua consulta personalizada ou na primeira inserção

$sql="insert into wp_wbp_unpublished values(null,"".$_POST["bibkey"]."",
"".$_POST["author"]."","".$_POST["title"]."","".$_POST["date"]."","".$_POST["note"]."",
"".$_POST["keywords"]."","nothing");";

E outra coisa é quando você faz o plugin, então você tem que colocar o arquivo "upgrade.php" na sua função ... Espero que funcione.


0 para resposta № 3

Eu usei a seguinte solução, que parece ser a melhor:

$wpdb->insert( $table, $data, $format );

Por exemplo:

$wpdb->insert(
$prefix."wp_wbp_unpublished",
array("bibkey"=>$_POST["bibkey"],"author"=>$author),
array("%s","%s")
);

Mais Informações: https://codex.wordpress.org/Class_Reference/wpdb#INSERT_row