2017-01-02 6 views
0

新年あけましておめでとうございます!、私はPHPで検索フォームを持っている、とのmod_rewriteを使用してイムは、今、私が欲しいものはこれです:URLリライト/書式設定とPHPの検索フォーム

私の通常のURL: http://mywebsite.com/buscar.php?p=my+search+string&pag=1

モッズ書き換え:TO

http://mywebsite.com/buscar/my+search+string/1

私はそれをどのように行うことができますか?

の.htaccess

RewriteEngine On RewriteRule ^buscar/(^[a-zA-Z0-9[:space:]]*$)/([0-9]+) buscar.php?p=$1&pag=$2

HTMLフォーム

<form action="buscar/1/" method="GET"> 
<div id="custom-search-input"> 
    <div class="input-group col-md-12"> 
     <input type="text" name="p" class="search-query form-control" placeholder="Buscar..." required autocomplete="off"/> 
     <span class="input-group-btn"> 
      <button class="btn btn-danger" type="submit"> 
       <span class="glyphicon glyphicon-search"></span> 
      </button> 
     </span> 
    </div> 
</div> 

答えて

1

あなたはそのためにJavaScriptを使用する必要があります。

あなたはこの機能を使用することができます。

function dosearch(frm) { 
    var text = document.getElementsByClassName('search-query')[0].value; 
    url = '/buscar/' + encodeURI(text) + '/1/'; 
    window.location = url; 
    return false; 
} 

そして、あなたはonsubmit="return dosearch(this)"を追加する必要があり、あなたの<form>要素の内部。ここで

はjsfiddleの例である:
https://jsfiddle.net/dekelb/gkbgqzq4/

+0

しかし、.htaccessを持つ方法はありますか? –

+1

いいえ、 '.htaccess'には全く関係ありません。これはブラウザで何が起こるかに関係します(要求がサーバーに届く前に起こります)。 – Dekel

+0

よろしくお願いします。 –