'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'suffix' => '/',
'normalizer' => [
'class' => 'yii\web\UrlNormalizer',
'normalizeTrailingSlash' => true,
'collapseSlashes' => true,
],
// остальные настройки urlManager
]
'suffix' => '/',
$this->registerJs('
$("#subscribe").on("click", function(e){
$.ajax({
method: "POST",
data: {id: $(this).attr("data-post-id"),_csrf: "' . Yii::$app->request->csrfToken . '"},
success: function(data){
console.log(data)
}
})
})
', View::POS_END)
if(Yii::$app->request->isAjax){
if(Yii::$app->request->validateCsrfToken()){
// продолжаем выполнение кода.
}
else{
return 'Error Csrf Token';
}
}
$user = User::findOne($_POST['userID']);
необходимо заменить на $user = User::findOne(['id' => Yii::$app->user->identity->id]);
if (array_key_exists('Counter-Strike: Global Offensive', $json)) {
echo "Массив содержит элемент 'Counter-Strike: Global Offensive'. И цена будет такой-то...";
}
if($this->isCorrectChat($resultData)){
$query1 = new \yii\db\Query();
$query1->select('userparam.*')
->from('userparam')
->where(['userparam.id' => 'param.id'])
->andWhere(['userparam.user_id' => 42])->one();
$query2 = new \yii\db\Query();
$query2->select('catparam.*')
->from('catparam')
->where(['catparam.parameter_id' => 'param.id'])
->andWhere(['in', 'catparam.category_id', [1,2]])->all();
$params = Param::find()
->select('id')
->where(['not exist' => $query1])->andWhere(['exists' => $query2])->all();
ну регистрация в два этапа=) В модальном окне заполняешь фио и прочую лабуду, затем нажимаешь далее, открывается вкладка где надо еще заполнить доп информацию, специальность стаж работы например.
class User extends ActiveRecord
{
const SCENARIO_LOGIN = 'login';
const SCENARIO_REGISTER = 'register';
public function scenarios()
{
return [
self::SCENARIO_LOGIN => ['username', 'password'],
self::SCENARIO_REGISTER => ['username', 'email', 'password'],
];
}
}
<input type='checkbox' name='checkbox[]' value="Москва" />
<input type='checkbox' name='checkbox[]' value="СПБ" />
<input type='checkbox' name='checkbox[]' value="Омск" />
$q->where('created_at', '>=', $dateFrom . ' 00:00:00');
public function getVacancy()
{
return $this->hasMany(Vacancy::class, ['id_company' => 'id']); // у одного профиля может быть много вакансий
}
public function getProfile()
{
return $this->hasOne(Profile::class, ['id' => 'id_company']); // у одной вакансии может быть только один профиль.
}
$vacancies = new ArrayDataProvider([
'allModels' => Vacancy::find()->with('profile')->where(['creator' => $creator]),
'pagination' => [
'pageSize' => 30
]
]);
return $vacancies;
echo $vacancies->profile->company;
'http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js',
'http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js',
public $js = []
public $depends = []
что прописано? RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#RewriteCond %{REQUEST_URI} ^/web/*
RewriteRule . index.php
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine on
</IfModule>
<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_URI} ^/.*
RewriteRule ^(.*)$ web/$1 [L]
RewriteCond %{REQUEST_URI} !^/web/
RewriteCond %{REQUEST_FILENAME} !-f [OR]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ web/index.php
</IfModule>
'showScriptName' => false,
$baseUrl = str_replace('/web', '', (new Request)->getBaseUrl());
'request' => [
'cookieValidationKey' => ADFAEk3o9dfhwleSDFo',
'baseUrl' => $baseUrl,
],
'' => 'site/default/index',
'contact' => 'site/contact/index',
'<_a:(error)>' => 'site/default/<_a>',
// это правило для модуля users
'<_a:(login|logout|signup|password-rest-request|email-confirm|reset-password)>' => 'users/default/<_a>',
'<_m:[\w\-]+>' => '<_m>/default/index',
'<_m:[\w\-]+>/<_c:[\w\-]+>' => '<_m>/<_c>/index',
'<_m:[\w\-]+>/<_c:[\w\-]+>/<_a:[\w\-]+>' => '<_m>/<_c>/<_a>',
'<_m:[\w\-]+>/<_c:[\w\-]+>/<id:\d+>' => '<_m>/<_c>/view',
'<_m:[\w\-]+>/<_c:[\w\-]+>/<id:\d+>/<_a:[\w\-]+>' => '<_m>/<_c>/<_a>',
echo $form->field($model, 'stages')->widget(MultipleInput::className(), [
'model' => $model,
'attribute' => 'stages',
])
->label(false);