1
http://example.com/bills.php?sort=highest 
http://example.com/bills.php?sort=alpha
http://example.com/bills.php?sort=lowest

したがって、上記の URL は、最高、アルファベット順、最低の順に並べ替えられます。フォームを使用して $_GET メソッドを使用します。URLを変更せずにフォームを送信/ $_GET データを取得する方法があるかどうか疑問に思っていましたか?

<form action="bills.php" method="get">
    <select onchange="this.form.submit();" name="sort" class="right sort">
        <option>What would you like to sort by?</option>
        <option value="highest" <?php if(isset($_GET['sort']) && $_GET['sort'] == 'highest'){?> selected="selected" <?php } ?>>Highest to Lowest</option>
        <option value="lowest" <?php if(isset($_GET['sort'])&& $_GET['sort'] == 'lowest'){?> selected="selected" <?php } ?>>Lowest to Highest</option>
        <option value="alpha" <?php if(isset($_GET['sort'])&& $_GET['sort'] == 'alpha'){?> selected="selected" <?php } ?>>Alphabetically</option>
    </select> 
</form>

上記は、新しい並べ替えリクエストを送信できるコードです。

URL をそのままにしておきたいのexample.com/bills.phpですが、それは可能でしょうか?

.htaccess を使用して URL を書き換えることは可能でしょうか? にアクセスできるようにする URL 書き換え方法を試してみましたhttp://example.com/bills/alphaが、正常に動作しますが、新しいクエリを選択すると、http://example.com/bills/bills/?sort=alpha.

これが私の.htaccessです

RewriteEngine On
RewriteBase /
RewriteRule ^bills/(.*)$ /bills.php?id=$1
4

1 に答える 1