Przekierowanie do podCześć , tworzę prostą wyszukiwarkę i chciałbym by po submicie przekierowało mnie do podstrony results.php wraz z tym co zosstrony

Cześć , tworzę prostą wyszukiwarkę i chciałbym by po submicie przekierowało mnie do podstrony results.php wraz z tym co zostało wpisane w textfield.

Nie wiem jak przekierować do strony która jest umieszczona w projektYii/protected/views/site/results.php . Podawanie całej ścieżki na pewno nie jest dobrym rozwiązaniem .

Jak to zrobić w tym frameworku ?


<form action="/result.php" method="post">

          <div>

                <label for="lab">Wpisz frazę:</label>

                <input type="text" autocomplete="off" id="hints" name="title"/>

	        <input type="submit" value="Szukaj">

             </div>

</form>

Spróbuj:


<form action="<?php echo Yii::app()->createUrl('site/result'); ?>" method="post">

W Yii2 można to zrealizować:

N[size="2"]a stronie z wyszukiwarką[/size]

[size="2"]




    <form method="post" action="<?= \yii\helpers\Url::to(['site/result'])?>">

        <div>

            <label for="lab">Wpisz frazę:</label>

            <input type="text" autocomplete="off" id="hints" name="title"/>

            <input type="submit" value="Szukaj">

        </div>

    </form>



[/size]

[size="2"]w kontrolerze np tak:[/size]

[size="2"]





    public function actionResult()

    {

        $searchTitle = '';

        

        if (trim(!empty(Yii::$app->request->post()['title']))) {

            $searchTitle = trim(Yii::$app->request->post()['title']);

        }


        return $this->render('result', ['searchTitle' => $searchTitle]);

    }



[/size]

[size="2"]a w widoku result.php:[/size]

[size="2"]


<p>Wyszukiwany tytuł: <?= $searchTitle ?></p>

[/size]

Dzięki za odpowiedź , niestety po wpisaniu


<form method="post" action="<?= \yii\helpers\Url::to(['site/result'])?>">

tej linijki wyświetla się pusta strona zamiast wyszukiwania. W konsoli w przeglądarce pokzauje:

Class ‘yii\helpers\Url’ not found in <b>C:\xampp\htdocs\test\protected\views\site\update.php</b>

Czyli z tego co widze ścieżkę do pliku php dobrze wstawił.


Edit:

użyłem tego:


<form action="<?php echo Yii::app()->createUrl('site/result'); ?>" method="post">

a w Controlerze

zamiast


Yii::$app->request->post()['title']))

dałem to


Yii::app()->request->getPost('title'));

i działa , dzięki .

A z której wersji frameworka korzystasz?

1.1.15

A poza widokiem views/site/results.php

Masz w Kontrolerze Site akcje results?