你好,请问下PHP框架设计的问题

一般都是解析url来分发路由,那么用post提交的表单怎么确定路由呢?是用hidden类型来提交控制器和模型吗?还是所有表单都采用的是get提交方式?... 一般都是解析url来分发路由,那么用post提交的表单怎么确定路由呢?是用hidden类型来提交控制器和模型吗?还是所有表单都采用的是get提交方式? 展开
 我来答
nbyh2012
2013-06-27 · TA获得超过3278个赞
知道小有建树答主
回答量:483
采纳率:100%
帮助的人:802万
展开全部

表单可以使用get和post两种方式。具体使用哪种方式,由实际的情况决定,而不是一味地采用get或者post。一般来说,访问数据使用get方式,修改数据使用post方式。


在提交的数据较多时,请使用post方式。因为get方式通过url提交数据,而url的长度是有限制的。所以get方式能够提交的数据量有限,超过限制时会被截断。而post方式是通过http头传递数据,理论上数据量是无限制的,但一般http server会限制每个请求的大小。所以使用时也需注意,必要时请配置服务器,保证它能接收足够长度的数据。


路由是由url决定的,但没有人能阻止你,在post请求的url中传入get参数。这和post本身是不冲突的。如下面代码中的method参数:

<form method="post" action="/actions/post.php?method=save">...</form>


隐藏域通常用于提交固定的数据或改变表单的行为。通过客户端脚本,如javascript,可以设置隐藏域的值,在提交时,这个信息会被传递到服务端。还有一种方式可以改变表单的行为:

<form>
    <input type="submit" name="save" value="保存" />
    <input type="submit" name="save" value="存草稿" />
</form>

在点击了“存草稿”按钮时,这个按钮的value也会被提交。在后台程序中,save的值也相应为“存草稿”,反之,为“保存”。这样可以实现“一个表单,两种功能”。

来自:求助得到的回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式