Я работаю на CakePHP 2.x .. сейчас у меня есть функция, называемая forgetpassword и ResetPassword в моем UsersController .. я посылаю письмо пользователю ..CakePHP удалить имя контроллера из URL
я посылаю URL, как это ..этот код записывается в forgetpassword функции
$url = Router::url(array('controller'=>'users','action'=>'resetpassword'), true ).'/'.$key.'#'.$hash;
и я получаю этот адрес в своем почтовом ящике, как этот
https://www.myweb.com/resetpassword/y2273727372jhgdfjjd2434dff#23232323
, когда я нажимаю URL-адрес, который находится на моем почтовом ящике .. он дает мне ошибку .. не идет функция resetpassword .. вместо этого, если я добавлю имя контроллера за функцией, то он успешно загрузит страницу
например
https://www.myweb.com/users/resetpassword/y2273727372jhgdfjjd2434dff#23232323
, но я не хочу имя контроллера за функции в URL
routes.php
Router::connect('/resetpassword', array('controller' => 'users', 'action'=>'resetpassword'));
Вам не нужна # часть. PHP все равно не может его использовать. Прошедшие параметры привязаны по-разному, поэтому ваше правило connect() неверно. Попробуйте 'Router :: connect ('/ resetpassword/*', ...)' – mark
, так что это правильный синтаксис для подключения ... я всегда использую это, и он работает .. но на этот раз я застрял совсем по-другому ситуация .. но всякий раз, когда я хочу удалить имя контроллера, я делаю это – hellosheikh
спасибо, что он работает – hellosheikh