const values = Array.from(
document.querySelectorAll('.aside input[type="checkbox"]:checked'),
n => n.value
);
return $this->renderAjax('path/to/file', ['model' => $model])
На ивент изменения значения поля фильтрации аякс посылать , получать данные и на основе данных в Success уже отправлять вёрстку при помощи JQuery?
$token = Yii::$app->security->hashData(time().'|'.$id, 'secret-key');
$data = Yii::$app->security->validateData($token, 'secret-key');
try {
list($time, $id) = explode('|', $data);
$model = MyModel::findOne($id);
if (null === $model || time() > $time + 2 * 3600) {
throw new Exception();
}
}
catch (Exception $e) {
echo 'Token invalid';
}
public function behaviors()
{
return [
'access' => [
'class' => \yii\filters\AccessControl::className(),
'rules' => [
// allow authenticated users
[
'allow' => true,
'matchCallback' => function ($rule, $action) {
if (Yii::$app->user->id == 1){
return false;
} else {
return true;
}
}
],
// everything else is denied
],
],
];
}
<?=Yii::$app->formatter->asDatetime($item->date, 'long')?>
;extension=php_intl.dll
15 мая 2018, то такой код подойдет
<?= Yii::$app->formatter->asDate($item->date, 'long')?>
мая
<?= Yii::$app->formatter->asDate($item->date, 'php:M')?>
<?= Yii::$app->formatter->asDate($item->date, 'php:d.M H:i')?>
'language' => 'ru-RU',
'timeZone' => 'Europe/Moscow',
class Order {
const SECRET_KEY = 'not-log-secret-key-2213123123';
}
$token = Yii::$app->security->hashData($order->id, Order::SECRET_KEY);
Для подтверждения пройдите по <a href="http://site.domain/order/confirm?token=<?= $token ?>">ссылке</a>
class OrderController extends Controller {
public function actionConfirm($token){
if ($id = \Yii::$app->security->validateData($token, Order::SECRET_KEY)){
if (($order = Order::findOne($id)) && $order->updateAttributes(['confirmed' => true])){
Yii::$app->session->addFlash('success', 'Талон подтвержден');
return $this->redirect('orders');
}
}
throw new NotFoundHttpException();
}
}
public function getDoctor($id)
{
return Doctor::find()->where('id=:id', [':id' => $id])->one();
}
public function contact($email)
{
if ($this->validate()) {
Yii::$app->mailer->compose('order', [
'date' => $this->date,
'time' => $this->time,
'doctor' => $this->getDoctor($this->doctor),
'name' => $this->name
])
->setTo([$this->email])
->setFrom([$email =>$this->subject])
->setSubject('Подтвержение заказа')
->send();
return true;
}
return false;
}
// подставьте свои значения вместо name, patronymic, surname
echo "Врач: " . $doctor->name . ' ' . $doctor->patronymic . ' ' . $doctor->surname
$('#form').on('submit', function (event) {
event.preventDefault();
})