Передача файлов и других данных из JS в PHP

272
11 сентября 2017, 06:24

У меня есть форма из которой нужно передать файл и другие данные в PHP.

            <?php echo form_open("admin/add_agent_request", array("id" => "new_agent_form", "enctype" => "multipart/form-data")) ?>
                <div class="box-body">
                    <div class="form-group">
                        <label for="email">Email</label>
                        <input name="email" id="email" type="text" class="form-control" placeholder="Enter email">                     
                    </div>
                    <div class="form-group" id="a">
                        <label for="photo">Add photo</label>
                        <input name="photo" type="file" id="photo" class="a">
                        <p class="help-block">Max photo size - 2 mb</p>
                    </div>
                </div>
                <!-- /.box-body -->
                <div class="box-footer">
                    <button name="new_agent_button" type="submit" class="btn btn-primary">Submit</button>
                </div>
            </form>

Скрипт для передачи данных

<script>
    $('#new_agent_form').submit(function(e)
    {
        e.preventDefault();
        var me = $(this);
        var form_data = {
            email: $('#email').val(),
            photo: document.getElementById('photo').files[0]
        };
        $.ajax(
        {
            url: me.attr('action'),
            type: 'POST',
            data: form_data,
            dataType: 'json',
            success: function(response)
            {
                if(response.success == true)
                {
                    $('#message').append(
                        '<div class="alert alert-success">'+
                        response.messages.error+
                        '</div>');
                }
            }
        });
    });
</script>

Контролер в котором должны обрабатываться данные

public function add_agent_request()
{
    $data['success'] = TRUE;
    $data['messages']['error'] = 'test';
    echo json_encode($data);
}

Если в объекте не передавать файл, то тогда все передается отлично, но с файлом в объекте данные не отправляются. Как передать объект с файлом?

READ ALSO
JS (или jQuery) как добавить функцию в div?

JS (или jQuery) как добавить функцию в div?

Написала такую функцию

220
Передача данных через модальное окно

Передача данных через модальное окно

Необходимо передать данные в базу данных MongoDB через модальное диалоговое окно без открытия другой страницыКод следующий:

207
Chrome Extension и Google Analytics

Chrome Extension и Google Analytics

Подскажите пожалуйста, как можно отследить количество установок хром расширения через гугл аналитику в background скрипте, при этом не открывая...

299
Как деобфусцировать код на js?

Как деобфусцировать код на js?

Нужно деобфусцировать код на js, ссылка на пастбин https://pastebincom/7dbCrdZk

176