任意位置调用万能表单的方法 顺便借楼说下purl的作用
374
12

很多人都需要万能表单进行填写 大部人都不知道怎么填写提交地址,下面给出一个示例:

<form name="" method="post" action="{:purl('form/content/add','mid=1','index')}" class="ajax_post   layui-form  ">
   
    <div class="cont">
      <table width="100%" border="0" cellspacing="0" cellpadding="0" class="FormTable">
        <tr id="form_group_linkman">
          <td class="tdL">联系人: </td>
          <td class="tdR layui-input-inline"><div>
              <input  placeholder='请输入联系人'    type='text' name='linkman' id='atc_linkman' style='' class='layui-input c_linkman ' value='' />
            </div></td>
        </tr>
        省略代码
        <tr>
          <td class="tdL"><br/></td>
          <td class="tdR"><input type="submit" name="Submit" value="提交"></td>
        </tr>
      </table>
    </div>
  </div>
</form>

咱们逐步分析下:首先提交的地址你可以写:

{:purl('form/content/add','mid=1','index')}

mid=1 就是你的表单id 

那么表单的内容怎么来的呢,表单的内容htm 其实也是这个地址生成的  你的域名/p/form-content-add/mid/1.html 

你打开这个地址就可以直接复制出来 然后改为自己的样式 加载在任意界面就可以提交内容了。

这里也可以打开


现在默认提交后是返回到提交的内容详情如果想改为跳转为首页也可以的。

plugins\form\index\Content.php   $url = purl('content/show',['id'=>$id]); 改为你想跳转的地址就可以


补个效果图 请忽略样式 测试用的没有样式:


反正也是发布了就借楼说下 

purl 函数的作用,简单的说他就是生成插件操作的url, 共有三个参数,

打开common.php 搜索下就会发现有注释。

 /**

     * 生成插件操作链接

     * @param string $url 链接:插件名称/控制器/操作

     * @param array $param 参数

     * @param string $module 模块名,admin需要登录验证,index不需要登录验证

     */

function purl($url = '', $param = [], $module = ''){

省略代码

}

这样看着是不是有点蒙,没事咱们分析下

$url 就是插件的操作路径 例如:form/content/add  这时候你还不确定是访问 form 目录下admin目录还是index目录呢 

$param 就是参数了 可以是数组 可以是变量 看你函数怎么写了 没有的话就可以为空

$module 就是指定是admin目录还是index目录了  也就是官方的说的登录验证和非登录验证。

{:purl('form/content/add','mid=1','index')} 比如这个链接 我们就是提交到了 plugins\form\index\Content.php 中的add方法

{:purl('form/content/add','mid=1','admin')} 比如这个链接 我们就是提交到了 plugins\form\admin\Content.php 中的add方法 这个就有权限了没有操作权限的就无法操作了

学会了 purl 生成的方法 就可以根据插件的目录去生成各种地址了。

借楼完毕!

5
打赏
收藏
点击回复
      全部留言
  • 12
  • wr1688 普通粉丝 消费:467.65元 3个月前 13:001楼

    非常感谢@随风的这个,非常有用,

    现在有个问题,其他页面调用之后,提交的表单,接收不到提醒,

    我这里直接打开表单提交就可以收到提醒,

    wr1688 消费:467.65元 3个月前
    搞定了   您已经说得很详细了,又认真看了你的帖子,{:purl('form/content/add','mid=1','member')}就好了
  • 银杏114在线 普通粉丝 消费:2257.82元 4个月前 08:132楼

    普遍需要,就是样式各有干秋,如结合定时发送(以圈子名或其它名称对应接收),是一个黑科技

  • 八一新乐享cs拓展郭 普通粉丝 消费:1032.54元 4个月前 01:173楼
    跳转首页  网址怎么填,自己没有 改对
  • 石头 风格开发者 消费:9087.32元 5个月前 22:084楼

    描述的很清楚,可以列入“教程”了

  • admin 超级管理员 消费:2.87元 5个月前 21:055楼

    二次开发.很有帮助.

  • 阿里巴巴 白金粉丝 消费:3000.22元 5个月前 07:236楼

    一通百通,谢谢楼主赐教!

  • 素之美 风格开发者 消费:346.11元 5个月前 19:10
    iPhone
    7楼
    顶起来
  • wr1688 普通粉丝 消费:467.65元 5个月前 18:46
    华为
    8楼
    可以举一反三了
  • hxbsj88 白金粉丝 消费:1853.86元 5个月前 17:38
    其他手机
    9楼
    普遍需要,就是样式各有干秋,如结合定时发送(以圈子名或其它名称对应接收),是一个黑科技
  • snscn 普通粉丝 消费:1862.35元 5个月前 17:28
    其他手机
    10楼
    收藏,太实用了。
  • wr1688 普通粉丝 消费:467.65元 5个月前 17:24
    华为
    11楼
    必须收藏
更多回复
Suifeng开发交流圈
      圈内贴子1764
  • 圈子成员198
本圈子内的新贴

热门分类
推荐内容
扫一扫访问手机版
请选择要切换的马甲: