データをPOSTしているので、コードを少しだけ再検討することをお勧めしますが、QueryString(URLの?の後のすべて)を介して情報を送信するだけでは、ポイントが少し欠落しています。
次のように、キーワードをオブジェクトで送信する必要があります。
var result = $("select#model option:selected").html();
$.post("advanced_search.php", { keywords: result }, function(data){
// success callback code goes here
});
PHPが$_POST['keywords']を検索する場合、$ postがjQueryによって実行されるときに、そこにデータが見つかるはずです。
QueryStringを介して送信することは元に戻せませんが、その場合は、実際には次の行に沿って何かを行う必要があります。
var result = $("select#model option:selected").html();
$.get("advanced_search.php",
{ keywords: result },
function(data){
// success callback code goes here
});
ただし、クエリ文字列を介したデータの送信は安全ではなく、エンコードとURLの長さの制限により問題が発生しやすいため、データのPOSTに適切に慣れておく必要があります。
また、これは疑問を投げかけます:なぜタグ内からHTMLをエンコードするのですか?次のように、単純なキーを単純に挿入しないのはなぜですか。
<select id="model">
<option value="key1">2001-2004 Honda Civic TypeR</option>
<option value="key2">2005-2008 Honda Civic TypeR</option>
<option value="key3">2009-2012 Honda Civic TypeR</option>
<option value="key4">2013-2015 Honda Civic TypeR</option>
</select>
var result = $("select#model option:selected").val();
$.post("advanced_search.php", { keywords: result }, function(data){
// success callback code goes here
});
各選択オプションのキーがない場合を除いて、値を短くしてエンコード/デコード値をいじくり回す必要がないことを考えると、クエリの実行も簡単になるはずです。その場合は、私は理解していると思いますあなたが取っているアプローチ。