Plugin that saves form data

时间:2013-06-12 作者:Ann

我的第一次插件尝试使用基本的PHP技能和WordPress经验。。。我想要的:

用户填写表单-表单操作将其发送到专用网关(确定该部分)从表单中选择数据保存到自定义表

这听起来可能很愚蠢,但我想我有我刚刚错过的所有元素,如何将它们组合在一起。。。这是一个非常基本的例子,我想在后面进行扩展。

这就是函数(构成表等的东西早就发生了)

function rchs_add_donor() {
   global $wpdb;
   $welcome_name = $_POST[\'name\'];
   $welcome_text = $_POST[\'text\'];

   $rows_affected = $wpdb->insert( play_donors, 
        array( 
                \'time\' => current_time(\'mysql\'), 
                \'name\' => $welcome_name, 
                \'text\' => $welcome_text ) );
}
现在,愚蠢的部分-我如何/在哪里放置表单来使用此函数?

我用直接的数据而不是$\\u帖子中的变量来测试上述内容,这样可以很好地写入新表。

如果有人能给我指出正确的方向,那就太好了!

基于第一个答案的更多研究是否得出了这样的结论:但需要确保它是“正确的”和“安全的”,似乎我应该在将数据写入数据库之前对其进行清理?

add_shortcode(\'donor_form_sc\',\'donor_form\');
function donor_form(){
global $wpdb;

echo \'<form method="post" action="\' . $this_page .\'">
  <label for="name" id="name">Name: </label>
<input type="text" name="name" id="name" />
<label for="text" id="text">Text: </label>
<input type="text" name="text" id="text" />

<input type="submit" />
  </form>\';

  };
 $welcome_name = $_POST[\'name\'];
   $welcome_text = $_POST[\'text\'];
    $rows_affected = $wpdb->insert( play_donors, 
        array( 
                \'time\' => current_time(\'mysql\'), 
                \'name\' => $welcome_name, 
                \'text\' => $welcome_text ) );
它按预期写入数据库。

1 个回复
SO网友:Barry Kooij

你的意思是如何在网站上显示表单?如果是,请为其编写一个短代码:)http://codex.wordpress.org/Shortcode_API

编辑:哦,您可能想添加一个钩子,以便触发保存数据的函数。add\\u操作(\'init\',\'rchs\\u add\\u provider\')应该执行。并在函数中添加一个检查,以检查您的帖子是否已设置。

结束

相关推荐