public function getFriendsList(){
return $this->hasMany(UserRelation::className(),['user_id'=>'id'])->where(['or', ['user_id' => $this->id],['invite_id'=>$this->id]);
}
public function getFriendsList(){
return UserRelation::find()->where(['or', ['user_id' => $this->id],['invite_id'=>$this->id]);
}
'attribute' => 'imageFile[]',
, а это означает, что нужно исправить:$model->imageFile = UploadedFile::getInstances($model, 'imageFile');
Yii::$app->response->format = Response::FORMAT_JSON;
if ($model->upload()) {
return ['error' => null];
}
/**
* @var UploadedFile[]
*/
public $imageFile;
foreach ($this->imageFile as $imageFile){
$imageFile->saveAs(Yii::getAlias('@app').'/web/img/' . $imageFile->baseName . '.' . $imageFile->extension);
}
$modules = require('/path/to/modules/file.php');
// и далее
return [
'modules' => array_merge($modules, [
'user' => [
'class' => common\modules\user\Module::className(),
],
]),
];
'/path/to/modules/file.php'
примерно следующего содержания:return [
'questions' => [
'class' => common\modules\poll\questions\Module::className(),
],
'answers' => [
'class' => common\modules\poll\answers\Module::className(),
],
'news' => [
'class' => common\modules\news\Module::className(),
],
'tags' => [
'class' => common\modules\tags\Module::className(),
],
'categories' => [
'class' => common\modules\categories\Module::className(),
],
'images' => [
'class' => common\modules\images\Module::className(),
],
'uploader' => [
'class' => common\modules\uploader\Module::className(),
],
'content' => [
'class' => common\modules\content\Module::className(),
],
'employees' => [
'class' => common\modules\employees\Module::className(),
],
'comments' => [
'class' => common\modules\comments\Module::className(),
],
];
$query = "INSERT INTO $userstable VALUES('$name','$email', '$preference')";
вы должны быть уверены, что первые три поля таблицы $usertable должны быть name, email и preference, остальные должны иметь значения по умолчанию. Это во-первых. Во-вторых - плохая практика писать запросы со вставкой переменных прямо в строку запроса (почитайте про SQL-инъекции). В третьих, по всей видимости - вместо $email = md5($params['password'])
ожидается $password = md5($params['password'])
. В четвертых - как пароль может сохранится, если вы его не вставляете в базу вообще? WHERE x IN(.....)
жесть.function(e) {
// отменяем привычное действие ссылки
e.preventDefault();
// добавляем класс loading
$(this).addClass("loading");
// переменной confirm_text присваиваем атрибут ссылки "Выход" с именем data-confirm или false
var confirm_text = $(this).data("confirm") || false;
// переменной method присваиваем атрибут ссылки "Выход" с именем data-method или get
var method = $(this).data("method") || "get";
// берем адрес ссылки для выхода
var url = $(this).attr("href");
// создаем пустой объект, будем использовать его для отправки данных на сервер
var post_data = {};
// если метод отправки = post, пробегаемся по всем атрибутам "data-post" ссылки "Выход" и заносим их значения с маленькой буквы в наш объект
if (method == "post") {
for (var i in $(this).data()) {
if (i.indexOf("post") === 0) {
post_data[i.replace(/^post/, "").toLowerCase()] = $(this).data(i)
}
}
}
var send = true;
// если у нас задан атрибут confirm_text (по всей видимости это alert-сообщение типа "Вы уверены что хотите выйти?"), то проверяем нажал ли пользователь "Да"
if (confirm_text) {
if (confirm(confirm_text)) {
send = true
} else {
send = false
}
}
// Если пользователь нажал "Да" или атрибут confirm_text не задан, то отправляем данные на сервер
if (send) {
$.ajax({
url: url,
cache: false,
dataType: "script",
type: method,
data: post_data
})
}
}
... а также почему если я перейду по ссылке toster.ru/auth/sign_out будет совсем не то, что я ожидаю (выход из аккаунта).
<img src="http://toster/sign-out">
и после захода на эту страницу все пользователи автоматом разлогинивались.