PHP将表单重定向到自定义URL

我有一个.htaccess代码用于重新分配搜索结果页面。

RewriteRule ^search/([a-zA-Z0-9\-]+)$ search.php?query=$1 [L,NC]

因此,当您转到/ search / blabla时,您只需转到search.php?query = blabla

没问题,没问题。当我写地址栏/ search / blabla时,它会显示结果。

问题是,当我使用搜索表单时,它会将我发送到search.php?query = blabla(无惊奇)

这是我的表单代码:

<form id="search" name="search" action="search.php" method="get">
    <table>
        <tr>
            <td><input type="text" size="20" maxlength="100" name="query" id="query"></td>
            <td><input type="submit" value="Search"></td>
        </tr>
    </table>
</form>

我希望此表单将我重定向到搜索/查询而不是search.php?query = query

我怎样才能做到这一点?

php_nub_qq

我遇到了同样的问题,最终我要做的是使用JavaScript拦截提交。

form.onsubmit = function(){
    var url = 'http://example.com/search/query';
    // obviously you will have some logic generating the url

    window.location = url;
    return false;
}

一点解释。

我认为不需要重写规则,因为这是javascript中非常基本的功能,并且在所有浏览器中均受支持。您可能会丢失的事实是,对每个单个请求都执行重写规则,这意味着,如果您有更多的规则(可能要做的话),则必须在所有请求上运行所有正则表达式。这是毫无意义的,因为根据您的应用程序,大多数规则将只占很少的请求,这意味着从长远来看,这浪费了处理能力,除非在特定情况下使用正则表达式,否则应避免使用这些规则别无选择。我知道浪费可能很小,但是当您最终进行了许多这样的微优化时,最终可能会变得很有意义。

只是说而已。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何阻止自定义 url 被重定向到主页?

通过nodejs重定向到自定义URL并表达

如何将所有httpError重定向到自定义URL?

如何将URL重定向到自定义IP地址?

如何将Wordpress注销重定向到自定义URL

将网址重定向到自定义目录

将Github主页重定向到自定义主页

将Wordpress帖子重定向到自定义php页面

PHP将表单重定向到URL无效

如何仅将特定自定义帖子类型的URL从尾部斜杠重定向到非尾部斜杠?

Spring Security 自定义登录表单重定向到资源不可用

WordPress自定义帖子类型表单重定向到找不到页面

Vue.js Netlify表单提交无法重定向到自定义“谢谢”页面

将wp-login.php隐藏为登录名并将其重定向到自定义登录页面

如何将Google自定义搜索引擎结果重定向到results.php页面?

将Chrome自定义标签重定向到Android应用将关闭该应用

后端表单保存后的自定义重定向

将根/主页重定向到自定义页面会破坏.htaccess中的所有其他重定向

安装 Shopify 应用后重定向到自定义 URL

下拉选项 - 根据所选选项重定向到自定义 url

Laravel 5.4登录后重定向到自定义URL

Nopcommerce - 自定义付款方式的 PostProcessPayment 不重定向到付款网关 URL

如何使用重写的 url 重定向到自定义错误页面

Django:Login_required(重定向到自定义 login_url)不起作用

将www重定向到非www以获取自定义URI

无法使用 Razor 页面(net core 3.1)将错误重定向到自定义页面

使用 htacess 将所有自定义页面重定向到专用页面

如何将* .appspot.com重定向到自定义域

将输出和错误重定向到自定义 PSHostUserInterface