2017-05-26 16 views
2

URLを渡してOpencartの検索にリンクする検索ボックスをホームページに設定しました。フォームからエンコードされていないURLを渡す

私がいる問題は、結果のURLは常にエンコードされていないということです:私は何を目指してることは

store/index.php?route=product/search&filter_name=test

私の現在のコードは

store/index.php?route%3Dproduct%2Fsearch%26filter_name=test

されている。

<?php 
$storesearch = $_REQUEST['store-search'] ; 
$filter = 'route=product/search&filter_name'; 
$filtered = html_entity_decode($filter); 
?> 
<form id="store" method="GET" action="http://localhost/vinmobile/store/index.php?<?php echo $storesearch; ?>"> 
<input type="text" id="store-search" name="<?php echo $filtered; ?>" value="Store Search" onclick="this.value = '';"> 
<input type="submit" name="" value="Search"> 

</form> 
<?php echo $filtered; ?> // Just to show it onscreen to make sure it's written correctly 

私はまだURLで終わる、私は$_REQUEST, $_GET, $_POST

としてたびに変数の宣言を試してみたGET, POST としてフォームの方法を試してみたエンコード、デコード、がhtml_entity_decode、urldecode、rawurldecode ... を試してみました以下のように見える:

store/index.php?route%3Dproduct%2Fsearch%26filter_name=test

私はそれが私が見逃している単純なものだと確信していますが、私はすべてを試みたし、誰かが正しい方向に私を指すことができれば非常に感謝される「だと思います」。

乾杯

webecho

+0

しかし、あなたの提案を

'<script> function process() { var url="store/index.php?route=product/search&filter_name=" + document.getElementById("filter").value; location.href=url; return false; } </script> <form id="store" onSubmit="return process();"> <input type="text" name="filter" id="filter" value="Store Search" onclick="this.value = '';"> <input type="submit" value="Search"> </form>' 

おかげで、あなたは最初 'utf8_decode'をやってみましたか? https://stackoverflow.com/a/1756925/6577664 – Mike

+0

は私はしませんでしたが、それはまだ... '$フィルタ= 'ルート%3Dproduct%2Fsearch%26filter_name' が動作しませんでした。 $ filtered = utf8_decode(urldecode($ filter)); また試みました: '$ filter = 'route = product/search&filter_name'; $ filtered = utf8_decode(urldecode($ filter)); ' – webecho

+0

フォームアクションへのルートの追加はどうですか? 'action = index.php?route = product/search'次に検索フィールドに' search'のように一貫性のある名前を付けます –

答えて

0

代わりにJavascriptを使用して終了し、それが完璧に動作します:

関連する問題