Как передать данные о значении в ссылку на действие

0

Мне нужно получить данные из URL-адреса ссылки на действие контроллера. Отправить значение из письма в мое приложение

<a href="http://myweb.com/register?r=Register/ClickVerifyEmail?xxxx=<?php echo xxxx;?>&ssss=<?php echo ssss; ?>">Click me </a>

В действии контроллера

public function actionClickVerifyEmail(){
    $verifycode = $_GET['xxxx'];
    $theid = $_GET['ssss'];

    //others stuff
}

Результат: Ошибка: Страница не найдена.

Любое предложение сделать это? или я что-то пропустил в своем коде? Кто-нибудь может помочь мне проверить? благодаря

Теги:
yii

4 ответа

0

В URL-адресе нет необходимости в вопросительном знаке. Пропущенный вами маршрут (? R =) уже является переменной, поэтому вам нужно просто использовать амперсанд (&) для следующего значения, которое вы передаете.

URL

<a href="http://myweb.com/register?r=Register/ClickVerifyEmail&xxxx=<?php echo xxxx;?>&ssss=<?php echo ssss; ?>">Click me </a>

ДЕЙСТВИЕ КОНТРОЛЛЕРА

public function actionClickVerifyEmail($xxxx, $ssss){
//So no need for $_GET['xxxx'];
//Just use $xxxx as a variable where needed
//e.g.
$a = $xxxx;
0

Я нахожу свое собственное решение:

<a href="http://myweb.com/register?r=Register/ClickVerifyEmail?xxxx=<?php echo xxxx;?>&ssss=<?php echo ssss; ?>">Click me </a>

Удалить register?r= URL-адреса рендера register?r=:

    <a href="http://myweb.com/Register/ClickVerifyEmail?xxxx=<?php echo xxxx;?>&ssss=<?php echo ssss; ?>">Click me </a>

Непосредственно введите имя и действие контроллера.

0
Yii::app()->createUrl('controller/action' , array('key1' => 'value1'));

эхо выше, чтобы получить нужные URL-адреса, где вам нужно

  • 0
    но эта ссылка находится внутри электронной почты ... все еще в состоянии использовать yii?
  • 0
    e-mail генерируется yii ??, когда вы создаете это письмо, вы должны указать этот URL-адрес, а затем в любом месте, где оно доступно, верно?
0

Ваш URL-адрес, указанный в href, неверен, есть два "?" в ссылке, поэтому он может сломаться.

Попытайтесь следовать ссылке Yii,

<?php echo CHtml::link('Click me',array('Register/ClickVerifyEmail',
                                         'xxxx'=>'value1','ssss'=>'value2')); ?>

если вы хотите отправить Absolute Url из своего приложения в электронную почту. вы можете построить ссылку таким образом.

Yii::app()->createAbsoluteUrl('Register/ClickVerifyEmail', array('xxxx'=>'value1','ssss'=>'value2'));

если https:

Yii::app()->createAbsoluteUrl('Register/ClickVerifyEmail', array('xxxx'=>'value1','ssss'=>'value2'), 'https');
  • 0
    но эта ссылка находится внутри электронной почты ... все еще в состоянии использовать yii?
  • 0
    Нет, ты не можешь . Ваша заявка отправляет это письмо с неправильным URL. Так что исправь это там.
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню