$ _FILES为空,表单在bootstrap模式中

时间:2015-09-08 14:48:56

标签: jquery twitter-bootstrap file codeigniter upload

当我尝试上传时,$ _FILES始终为空。我不知道该怎么做才能解决这个问题。我正在使用CodeIgniter和bootstrap模式。

我有几个按钮,每个按钮打开一个模态。每个都有一个表格。 每个表单都单独提交

我的观点:

<!-- MODAL -->
<div class="modal fade" id="modal2729" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                <h4 class="modal-title" id="myModalLabel">Preencher os dados do Atleta: Maria Inês Remesso Paixão</h4>
            </div>
            <div class="modal-body">
                <!-- /////// FORM \\\\\\\ -->
                <form enctype="multipart/form-data" data-async="2729"  action="http://localhost/gestor_akram/inscricao_atletas_epoca_desportiva/inscrever_atletas_epoca_desportiva/inserir_atletas_selecionados"  method="POST" id="atletas_escolhidos_form2729" >

                    <!-- Mensagens -->
                    <div id="msg2729">

                    </div>

                    <div class="form-group">
                        <label for="nivelAtleta_id">Nível de Atleta <span style="color:#CC0000">*</span></label>
                        <select class="form-control validate[required]" name="nivelAtleta_id">
                            <option value="" disabled selected>Escolher...</option>
                            <option value="1" selected>A</option>
                            <option value="2">B</option>
                            <option value="3">C</option>
                        </select>
                    </div>

                    <div class="form-group">
                        <label for="categoriaPeso_id">Categoria de Peso</label>
                        <select class="form-control" name="categoriaPeso_id">
                            <option value="" disabled selected>Escolher...</option>
                            <option value="6">+54 Kg</option>
                            <option value="21">+54 Kg</option>
                            <option value="13">+55Kg</option>
                            <option value="29">+59 Kg</option>
                            <option value="35">+68 Kg</option>
                            <option value="18">+70Kg</option>
                            <option value="25">+76 Kg</option>
                            <option value="34">+84 Kg</option>
                            <option value="2">-30 Kg</option>
                            <option value="3">-37 Kg</option>
                            <option value="9">-40 Kg</option>
                            <option value="4">-44 Kg</option>
                            <option value="10">-45 Kg</option>
                            <option value="19">-47 Kg</option>
                            <option value="26">-48 Kg</option>
                            <option value="11">-50 Kg</option>
                            <option value="14">-52 Kg</option>
                            <option value="27">-53 Kg</option>
                            <option value="5">-54 Kg</option>
                            <option value="20">-54 Kg</option>
                            <option value="12">-55 Kg</option>
                            <option value="15">-57 Kg</option>
                            <option value="28">-59 Kg</option>
                            <option value="30">-60 Kg</option>
                            <option value="22">-61 Kg</option>
                            <option value="16">-63 Kg</option>
                            <option value="31">-67 Kg</option>
                            <option value="23">-68 Kg</option>
                            <option value="17">-70 Kg</option>
                            <option value="32">-75 Kg</option>
                            <option value="24">-76 Kg</option>
                            <option value="33">-84 Kg</option>
                            <option value="1">Open</option>
                        </select>
                    </div>

                    <div class="form-group">
                        <label for="altura">Altura (cm)</label>
                        <input type="text" name="altura" class="form-control">
                    </div>
                    <!-- SEGUROS -->
                    <div id="seguroField2729" class="seguro_container">
                        <fieldset class="scheduler-border">
                            <legend class="scheduler-border">Dados do Seguro <span style="color:#CC0000">*</span></legend>
                            <!-- Tipos de Seguro Escolher -->
                            <div class="form-group">
                                <label class="radio-inline">
                                    <input class="radiox" id="radioTipoSeguro22729" type="radio" name="tipoSeguro_id" value="2"> <strong>Seguro FNKP Opção 1</strong>
                                </label>
                                <label class="radio-inline">
                                    <input class="radiox" id="radioTipoSeguro32729" type="radio" name="tipoSeguro_id" value="3"> <strong>Seguro FNKP Opção 2</strong>
                                </label>
                                <label class="radio-inline">
                                    <input class="radiox" id="radioTipoSeguro42729" type="radio" name="tipoSeguro_id" value="4"> <strong>Seguro Privado</strong>
                                </label>
                            </div>
                            <!-- //END// Tipos de Seguro -->

                            <!-- Tipo Seguro Campos-->
                            <div id="fieldTipoSeguro22729" class="tipoSeguro_container">
                                <div class="form-group">
                                    <label for="nrApolice">Nº da Apólice</label>
                                    <input type="text" name="nrApolice[2]" class="form-control">
                                </div>

                                <div class="form-group">
                                    <label for="nomeCompanhia">Nome da Companhia</label>
                                    <input type="text" name="nomeCompanhia[2]" class="form-control">
                                </div>

                            </div>
                            <div id="fieldTipoSeguro32729" class="tipoSeguro_container">
                                <div class="form-group">
                                    <label for="nrApolice">Nº da Apólice</label>
                                    <input type="text" name="nrApolice[3]" class="form-control">
                                </div>

                                <div class="form-group">
                                    <label for="nomeCompanhia">Nome da Companhia</label>
                                    <input type="text" name="nomeCompanhia[3]" class="form-control">
                                </div>

                            </div>
                            <div id="fieldTipoSeguro42729" class="tipoSeguro_container">
                                <div class="form-group">
                                    <label for="nrApolice">Nº da Apólice</label>
                                    <input type="text" name="nrApolice[4]" class="form-control">
                                </div>

                                <div class="form-group">
                                    <label for="nomeCompanhia">Nome da Companhia</label>
                                    <input type="text" name="nomeCompanhia[4]" class="form-control">
                                </div>
                                <div class="form-group">
                                    <label for="comprativo">Comprovativo</label>
                                    <input type="file" name="comprovativo[4]">
                                </div>

                            </div>
                            <!-- //END// Tipo Seguro -->
                        </fieldset>
                    </div>
                    <!-- END SEGUROS -->

                    <div class="form-group">
                        <label for="nrTransacaoFNKP">Nº da Transação FNKP <span style="color:#CC0000">*</span></label>
                        <input type="text" name="nrTransacaoFNKP" class="form-control">
                    </div>

                    <div class="form-group">
                        <label for="nivelPEP">Nível de PEP</label>
                        <select class="form-control" name="nivelPEP">
                            <option value="" disabled selected>Escolher...</option>
                            <option value="1">1</option>
                            <option value="2">2</option>
                            <option value="3">3</option>
                        </select>
                    </div>

                    <div class="form-group">
                        <input type="checkbox" name="altoRendimentoDRJD" value="1"> Atleta de Alto Rendimento DRJD
                    </div>

                    <div class="form-group">
                        <input type="checkbox" name="altoRendimentoFNKP" value="1"> Atleta de Alto Rendimento FNKP
                    </div>

                    <div class="form-group">
                        <input type="checkbox" name="selecaoRegional" value="1"> Seleção Regional
                    </div>

                    <div class="form-group">
                        <input type="checkbox" name="selecaoNacional" value="1"> Seleção Nacional
                    </div>

                    <div class="form-group">
                        <textarea class="form-control" rows="3" name="observacoes"></textarea>
                    </div>

                    <!-- Campos invisíveis -->
                    <input type="text" name="atleta_id" value="2729" style="display:none" readonly>
                    <input type="text" name="dojo_id" value="5" style="display:none" readonly>

                    <input type="submit" class="btn btn-primary btn-sm btn-rect" id="btn_validar_atleta" value="Guardar">
                    <button type="button" class="btn btn-primary btn-sm btn-rect" data-dismiss="modal">Fechar</button>    
                </form>
            </div>

            <!-- ////////////// END FORM \\\\\\\\\\\ -->

        </div>
    </div>
</div> <!-- /.modal -->

我的控制器:

function inserir_atletas_selecionados() {
    //Gravar Época na sessão
    $epoca_desportiva_id = $this->session->userdata('epoca_desportiva_id');

    //POST
    $nrApolice = $this->input->post('nrApolice');
    $nomeCompanhia = $this->input->post('nomeCompanhia');
    $tipoSeguro_id = $this->input->post('tipoSeguro_id');

    //Validações
    $base = 'required|xss_clean|encode_php_tags|prep_for_form';
    $base2 = 'xss_clean|encode_php_tags|prep_for_form';

    $this->form_validation->set_rules('atleta_id', 'Atleta', $base . '|callback_check_atleta[' . $epoca_desportiva_id . ']');
    $this->form_validation->set_rules('nivelAtleta_id', 'Nível de Atleta', $base2);
    $this->form_validation->set_rules('categoriaPeso_id', 'Categoria de Peso', $base2);
    $this->form_validation->set_rules('altura', 'Altura', $base2 . '|integer');
    $this->form_validation->set_rules('nivelPEP', 'Nível de PEP', $base2);
    $this->form_validation->set_rules('altoRendimentoDRJD', 'Alto Rendimento DRJD', $base2);
    $this->form_validation->set_rules('altoRendimentoFNKP', 'Alto Rendimento FNKP', $base2);
    $this->form_validation->set_rules('selecaoRegional', 'Seleção Regional', $base2);
    $this->form_validation->set_rules('selecaoNacional', 'Seleção Nacional', $base2);
    $this->form_validation->set_rules('observacoes', 'Observações', $base2);
    $this->form_validation->set_rules('tipoSeguro_id', 'Tipo de Seguro', $base);
    $this->form_validation->set_rules('nrTransacaoFNKP', 'Nº da Transação FNKP', $base);

    if (!empty($tipoSeguro_id)) {
        foreach ($nrApolice as $key => $value) {
            if ($tipoSeguro_id == $key) {
                $this->form_validation->set_rules('nrApolice[' . $key . ']', 'Nº da Ápolice do ' . $this->global_model->get_tipo_seguro_by_id($tipoSeguro_id)->designacao, $base);
            }
        }
    }

    if (!empty($tipoSeguro_id)) {
        foreach ($nomeCompanhia as $key => $value) {
            if ($tipoSeguro_id == $key) {
                $this->form_validation->set_rules('nomeCompanhia[' . $key . ']', 'Nome da Companhia do ' . $this->global_model->get_tipo_seguro_by_id($tipoSeguro_id)->designacao, $base);
            }
        }
    }

    //Erros de Validação
    if ($this->form_validation->run() == FALSE) {
        echo validation_errors();
    } else {
        //Data da Inscrição
        date_default_timezone_set('Europe/Lisbon');
        $date = date('Y/m/d h:i:s', time());

        //Dados para inserir na Tabela inscricaoatleta
        $data_atletas = array();
        $data_atletas['nivelAtleta_id'] = $this->input->post('nivelAtleta_id');
        $data_atletas['atleta_id'] = $this->input->post('atleta_id');
        $data_atletas['categoriaPeso_id'] = $this->input->post('categoriaPeso_id');
        $data_atletas['altura'] = $this->input->post('altura');
        $data_atletas['dtInscricao'] = $date;
        $data_atletas['nivelPEP'] = $this->input->post('nivelPEP');
        $data_atletas['altoRendimentoDRJD'] = $this->input->post('altoRendimentoDRJD');
        $data_atletas['altoRendimentoFNKP'] = $this->input->post('altoRendimentoFNKP');
        $data_atletas['selecaoRegional'] = $this->input->post('selecaoRegional');
        $data_atletas['selecaoNacional'] = $this->input->post('selecaoNacional');
        $data_atletas['observacoes'] = $this->input->post('observacoes');
        $data_atletas['epoca_desportiva_id'] = $epoca_desportiva_id;
        $data_atletas['dojo_id'] = $this->input->post('dojo_id');
        $data_atletas['nrTransacaoFNKP'] = $this->input->post('nrTransacaoFNKP');
        $data_atletas['tipoSeguro_id'] = $tipoSeguro_id;
        $data_atletas['nrApolice'] = $nrApolice[$tipoSeguro_id];
        $data_atletas['nomeCompanhia'] = $nomeCompanhia[$tipoSeguro_id];

        print "<pre>";
        print_r($_FILES);
        print "</pre>";
    }
}

0 个答案:

没有答案