Javascript 何时或如何将参数传递到URL?

Javascript 何时或如何将参数传递到URL?,javascript,php,forms,url,Javascript,Php,Forms,Url,使用PHP、HTML和Javascript。 对于PHP,我们使用的是MVC框架 我有一个关于网络交流的基本问题,也许有人可以在这里澄清一些事情 分开休息,只带“post”和“get”: 如果我们这样说: 它将列出给定公司的所有收入 如果我们这样做: 它将列出该公司2010年的所有收入。 等等。 现在,我希望允许用户从html表单中选择一些值,并根据这些值从服务器返回适当的数据 这是如何工作的? a) 我们应该在客户端连接URL字符串(表单操作)并将其发送到服务器端吗? b) 我们应

使用PHP、HTML和Javascript。 对于PHP,我们使用的是MVC框架

我有一个关于网络交流的基本问题,也许有人可以在这里澄清一些事情

分开休息,只带“post”和“get”:

如果我们这样说:


它将列出给定公司的所有收入




如果我们这样做:


它将列出该公司2010年的所有收入。

等等。


现在,我希望允许用户从html表单中选择一些值,并根据这些值从服务器返回适当的数据

这是如何工作的?
a) 我们应该在客户端连接URL字符串(表单操作)并将其发送到服务器端吗?
b) 我们应该将参数发送到服务器端,然后它返回URL吗


反正行吗?只有一种方法有效?这些路径的后果是什么?还有第三种可能性吗?

在使用PHP进行处理时,您应该创建url,以便可以从服务器传递ID或任何其他信息。从客户端生成URL需要额外的处理

<form action="companyA/income/<?php echo (int)$years; ?>">
    ...

<form action="<?php echo $this->makeUrl('companyA/income', $years); ?>">
    ...

a) 我们应该在客户端连接URL字符串(表单操作)并将其发送到服务器端吗

历史上一直都是这样做的,现在仍然很好。这相当于手工构建完整的HTML,但是使用PHP(或任何服务器端语言)帮助您消除手工劳动,将HTML建立在您可以轻松访问的数据之上

b) 我们应该将参数发送到服务器端,然后它返回URL吗

这是不必要的,您已经准备好了所有数据,因此使用a)更为可靠,因为它通过将呈现url从参数逻辑中排除,使客户机变得更加愚蠢

还有第三种可能性吗

对。由于您已经在/companyA/income/2010/(可能通过JSON)公开了资源列表,因此可以从服务器端提供一个空页面,触发对后端的ajax调用,并在客户端动态生成列表。这带来了一系列需要思考的事情,其中一些是:

  • 当(谷歌)机器人请求空页面时,SEO如何受到影响
  • 我们是否可以在不重新加载空页面的情况下为不同的视图重用呈现逻辑

你可以阅读SPA,或者,。

这是一个相当广泛/开放的问题,至少我认为很难回答。我会研究项目a)只服务于生成的HTML(比如静态博客生成器,可能是Jekyll或类似的东西,但用php编写);b) 为服务器端生成的模板提供服务,例如任何使用Twig的php项目,通常通过ajax使用更新的模板进行补充;c) SPA,从我答案中的链接。这些是可供选择的最常见范例。