Как при регистрации пользователя добавить поле и данные из другой таблицы?
Есть пользователь Администратор, как можно реализовать регистрацию пользователя и устройство (чтобы при создание пользователя сохранялось устройство к пользователю которого регистрируем)
В миграциях добавьте поле, например, user_agent в таблицу Users. А user-agent можно получить JS-кой через navigator.userAgent и передать в запрос, либо через PHP $_SERVER['HTTP_USER_AGENT'].
Сергей Lero: Да проще, спасибо , просто проблема такая когда регистрирую пользователя , от Администратора и он в таблице устройства присваивает id админа
Владислав: то есть сейчас две таблицы, правильно я понимаю вас?
users : id,name,bla-bla-bla
и
user_agent : id,name, user_id?
И в user_id присваивается id админа, а не нового пользователя, так?
Владислав: тогда почитайте про метод insertGetId() . Он позволяет получить последний id, который добавлялся в базу.
Т.е.:
1)первым запросом добавляйте данные в users.
2) Получаете его id через insertGetId()
3) вторым запросом добавляете данные в device, а user_id = результат insertGetId().
Сергей Lero: Создал, и получил ошибку
SQLSTATE[HY000]: General error: 1364 Field 'email' doesn't have a default value (SQL: insert into `users` (`name`) values ())
Сергей Lero: А вот если я создал еще одну таблицу user_device (user_id, device_id) , т.к у пользователя может быть много устройств... Я прописал в моделях, но он в эту таблицу не сохраняет..