Eu tenho uma página da Web que contém um formulário, como o seguinte:
O texto dos usuários é lido a partir da query
e os resultados da pesquisa são exibidos usando o código na seção a seguir:
if ($_POST['query']) { //Users query is read and results from a search API are displayed }
A próxima coisa que acontece é que uma lista de sinônimos é gerada, armazenada em uma multidimensional array chamada $synonyms
que eu mostrei em uma barra de navegação à esquerda, usando o código mostrado abaixo. $newline
imprime uma nova linha (como sugere o nome da variável)
Exemplo de matriz de $synonyms
:
array(3) { [0]=> array(2) { [0]=> string(9) "chelonian" [1]=> string(17) "chelonian reptile" } [1]=> array(6) { [0]=> string(7) "capsize" [1]=> string(11) "turn turtle" [2]=> string(8) "overturn" [3]=> string(9) "turn over" [4]=> string(8) "tip over" [5]=> string(9) "tump over" } [2]=> array(4) { [0]=> string(4) "hunt" [1]=> string(3) "run" [2]=> string(9) "hunt down" [3]=> string(10) "track down" } }
Código usado para exibir a matriz:
foreach ($synonyms as $test) { foreach ($test as $test2) { echo $test2.$newline.$newline; } }
O que eu quero acontecer é:
Transforme cada sinônimo em um link clicável … se o usuário clicar no sinônimo de “capsize”, a palavra capsize é enviada para a seção em que o sinônimo ( query
anterior) é lido e processado em resultados … ie. de volta a esta seção:
if ($_POST['query']) { // Synonym is read and results from a search API are displayed // Previously 'query' was read here // The cycle continues again }
Qualquer idéia ou sugestão sobre este seria ótimo, obrigado pessoal.
Você deve usar o GET no formulário de pesquisa. Em seguida, liste os sinônimos como mostrado abaixo
foreach ($synonyms as $test) { foreach ($test as $test2) { // I used
for newline printf('%1$s
', $test2); } }
Edit: E, obviamente, você deve replace $ _POST [‘query’] por $ _GET [‘query’]