elgg 本身提供一套完善的系统 来创建表单 但是 有时自定义随心所欲的创建自己的表单更方便
插件目录如图所示
actions 放置 表单处理方法 page 为控制器 views 为视图
1、在插件的根目录下start.php 中 注册处理表单的方法
elgg_register_action("file/edit", "$action_path/edit.php");
elgg_register_action("file/mkdir", "$action_path/mkdir.php");
2、在视图里面创建相关页面 比如add.php
<?php
/**
* Profile info box
*/
$owner = elgg_get_page_owner_entity();
........
.........
//guestbook表单__elgg_ts __elgg_token
$ts = time();
$token = generate_action_token($ts);
?>
<form id="commentPostForm" action="<?php echo elgg_get_site_url()?>action/guestbook/add" method="post">
。。。。。。
<input type="hidden" name="__elgg_ts" value="<?php echo $ts?>">
<input type="hidden" name="__elgg_token" value="<?php echo $token?>">
<input type="hidden" name="owner_guid" value="<?php echo $owner->guid?>">
</form>
elgg 本身自带一套严格的表单验证方法 表单中比如加入 __elgg_ts __elgg_token 否则elgg识别表单为非法
4、在actions目录中创建处理方法 add.php 进行相关表单处理