Привет всем монстрам php
Сразу скажу что опыт не большой. За этим и обращаюсь к опытным разработчикам.
Я пишу свой маленький проект на codeigniter
Загрузил библиотеку ion auth для системы авторизации.
Хочу сделать при регистрации добавление аватара. В общем я то все сделал, добавил поле во вьюхе, через аякс пост запрос которые отправляет все данные формы.
Беда в том, что пост запрос ссылается на ту же страницу в контроллере. Т.е. я нахожусь на
/auth/create_user
Соответственно запрос ведет туда же
$.ajaxFileUpload({
url :'/auth/create_user/',
secureuri :false,
fileElementId :'avatar',
dataType : 'json',
data : {
'first_name' : $('#first_name').val(),
'last_name' : $('#last_name').val(),
'email' : $('#email').val(),
'password' : $('#password').val(),
'password_confirm' : $('#password_confirm').val()
},
success : function (data, status)
{
if(data.status != 'error')
{
$('#files').html('<p>Reloading files...</p>');
refresh_files();
$('#title').val('');
}
alert(data.msg);
}
});
В этом
create_user контроллере обрабатываю данные и отправляю в модель для записи в бд. Но когда я отправляю форму, данные о загрузке файла еще нету и по этому отправляется значение NULL от сюда и ошибка:
A Database Error Occurred
Error Number: 1048
Column 'avatar' cannot be null
INSERT INTO `users` (`username`, `password`, `email`, `group_id`, `ip_address`, `avatar`, `created_on`, `last_login`, `active`) VALUES ('ivan damaskin123', '694249d6babe4d1fee2b914e27cfd0c1452cc91f', 'testcdfd@test.ru', '2', '127.0.0.1', NULL, 1455366325, 1455366325, 1)
Filename: X:\home\bl.ls\www\system\database\DB_driver.php
Line Number: 331
Хотя в базе записьс оздается и прописывается даже путьк файлу, т.е. все работает, но база изначально при проверке получает NULL для ячейки avatar, но потом фал грузится и данные все записываются как надо, но ошибка остается -(
Надеюсь я не сильно запутал и кто то сможет разобраться.