Как вставить строку поискового запроса в якорь

Давайте возьмем 3 ключевых слова: Солнечный лучик, зеркало, затмение

При выполнении поиска с помощью формы:

<form method="get" action="search.php">
<input name="q" type="search">
</form>

URL выглядит очень красиво, вот так:

http://localhost/gallery/search.php?q=sunlight+mirror+eclipse

Все идет нормально.

При попытке вставить строку поискового запроса в привязку, как это

// get the query string
if (isset($_GET['q'])) {
$current_q = $_GET['q'];
}

<a href="<?php echo 'http://localhost/gallery/search.php?q=' . $current_q; ?>">this is my query</a>

я получаю что-то уродливое со странными символами между ключевыми словами, например так:

http://localhost/gallery/search.php?q=sunlight%20mirror%20eclipse

Зачем? А как сделать это красиво, как при использовании формы?

Спасибо

0

Решение

Самый простой способ сделать это — использовать $_SERVER['QUERY_STRING'] это будет что-нибудь после ?
это получит это так же, как URL получает это

 http://localhost/gallery/search.php?q=sunlight+mirror+eclipse

некоторый код

 <?php
$query = $_SERVER['QUERY_STRING'];
$query = str_replace(' ', '+', urldecode($query));
echo "<a href='http://localhost/gallery/search.php?$query'>this is my query</a>";

Документация PHP СЕРВЕР РУКОВОДСТВО

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]