Ir ao conteúdo
  • Cadastre-se

JorgeGomes

Membro Júnior
  • Posts

    14
  • Cadastrado em

  • Última visita

posts postados por JorgeGomes

  1. Boa noite!

     

    A situação é a seguinte, estou incluindo páginas dentro de iframes, sendo que as mesmas fazem parte do mesmo domínio, existem campos e seus valores máximos, e também um botão para selecionar todos os valores máximos destes campos, e este é meu objetivo, clicar nesse botão, porém, quando disparo o evento clique, nada é selecionado, entretanto, observei que adicionar valores manualmente a estes campos funcionava. 

     

    Segue o código utilizado para disparar evento clique e selecionar o valor máximo de todos os campos:

    $('#praca0').contents().find('#todasUnidades').click();

    Isto é o que funciona:

    $('#praca0').contents().find('#campo1').val('10');

    Contudo, eu não quero fazer isso para cada campo, sendo que já tenho um botão que seleciona todos os valores máximos.

     

    Vale ressaltar que se disparar o evento clique nas respectivas páginas sem estarem dentro de iframes tudo ocorre como esperado.

     

    Desde já agradeço pela ajuda!

  2. o problema está aqui:

     

    <input value="Entrar" wtx-context="2E50E7F0-188D-4917-8E3B-33B1207CD0B4" type="submit">
                    
    #entrar {
        margin-right: -1040px;
    }

     

    tira este margin-right e bota isso:

    #entrar {
    	float: right;
    }

    a partir daí, adiciona margin-right para posicioná-lo mais para esquerda.

  3. Cara, dê uma conferida nessas margens, para que isso todo? Tem margens que tem mesma quantidade de pixels que uma tela desktop, esta por exemplo:

     

    margin-right:900px;

     

    Você pode fazer algo extremamente simples utilizando ou se baseando no sistema de grids do framework bootstrap. Dê uma olhada depois.

  4. Pode fazer algo deste tipo:

    // Função que faz conexão com o banco de dados
    $con = connection();
    
        $files = $_FILES['files'];
        $files_num = count(array_filter($files['name']));
        
        //PASTA
        $target_dir = '../uploads/';
    
        //REQUISITOS
        $file_permis = array('image/jpeg', 'image/jpg', 'image/png');
        $max_size = 1024 * 1024 * 5;
    
        //MENSAGENS
        $msg = array();
        $errorMsg = array(
            '1' => 'O arquivo enviado excede o limite definido na diretiva upload_max_filesize do php.ini.',
            '2' => 'O arquivo excede o limite definido em MAX_FILE_SIZE no formulário HTML.',
            '3' => 'O upload do arquivo foi feito parcialmente.',
            '4' => 'Nenhum arquivo foi enviado.',
            '6' => 'Pasta temporária ausente. Introduzido no PHP 5.0.3.',
            '7' => 'Falha em escrever o arquivo em disco. Introduzido no PHP 5.1.0. ',
            '8' => 'Uma extensão do PHP interrompeu o upload do arquivo. O PHP não fornece uma maneira de determinar qual extensão causou a interrupção. Examinar a lista das extensões carregadas com o phpinfo() pode ajudar. Introduzido no PHP 5.2.0. '
        );
    
        for ($i = 0; $i < $files_num; $i++) {
            $name = $files['name'][$i];
            $type = $files['type'][$i];
            $size = $files['size'][$i];
            $error = $files['error'][$i];
            $tmp = $files['tmp_name'][$i];
    //        $ext = @end(explode('.', $name));
            $ext = substr($name, -4);
            $ext = (strpos($ext, '.')) ? '.' . $ext : $ext;
            $newName = $postid . '-' . md5(uniqid(time())) . $ext;
    
            if ($error)
                $msg[] = "<span class='alert alert-danger' role='alert'>'.$name.': '" . $errorMsg['$error'] . "'</span>";
            elseif (!in_array($type, $file_permis))
                $msg[] = "<span class='alert alert-danger' role='alert'>'.$name.': Tipo da imagem não é aceitável!'</span>";
            elseif ($size > $max_size)
                $msg[] = "<span class='alert alert-danger' role='alert'>'.$name.': Imagem de tamanho maior que 5MB.'</span>";
            else {
                move_uploaded_file($tmp, $target_dir . $y . '/' . $m . '/' . $newName);
                date_default_timezone_set('America/Recife');
                $timezone = date('Y-m-d H:i:s');
                $statement = $con->prepare("INSERT INTO imagens (id, img, data) VALUES (?, ?, ?)");
                $statement->bind_param("iss", $postid, $newName, $timezone);
                $statement->execute();
                if (!$statement)
                    echo $con->error;
                $statement->close();
            }
    
            if ($msg)
                foreach ($msg as $message) :
                    echo $message . '</br>';
                endforeach;
    
        }
        $con->close();

    No html:

    <input type="file" name="files[]" />

     

  5. Estou com problema, o servidor local APACHE não está reconhecendo as folhas de estilos, e a inclusão de arquivos JAVASCRIPT também está com problemas, seguem os erros:

     

    2n7qruh.png

     

    Com uma url estática tudo é carregado certinho:

    2chlyy1.png

     

    315bx3m.png

     

     

    Entretanto, quando mudo para uma url absoluta as folhas de estilos e scripts não carregados:

    n5pmrm.png

     

    1zce1wg.png

     

     

    Como podem perceber pelas requisições feitas, com url estático os tipos saem certinhos, o que é css sai text/css, e o que é javascript, sai JS, contudo, quando boto urls absolutas, sai tudo text/html, e o navegador não reconhece.

     

    Alguém tem alguma solução?

  6. Citação

    Opa, procure instanciar o datepicker após o load da tabela, pois como está hoje, ele chama quando abre a página porém a tabela ainda não foi criada.

    
    function fetch_data() { 
      //-- REMOVE OS PLUGINS ANTIGOS 
      $(".datepicker").datepicker("destroy"); 
      $.ajax({ 
        url: "docentes/select.php", 
        method: "POST", 
        success: function (data) { 
          $('#live_data').html(data);
          //-- INSTANCIA OS NOVOS PLUGINS 
          $(".datepicker").datepicker({ 
            dateFormat: "dd/mm/yy" }); 
        } 
      }); 
    }  

     

     

     

    Créditos: andreneeto, Fórum iMasters.

     

    LInk do tópico onde obtive resposta:

    Tópico: Utilizar vários datapickers em uma tabela carregada com ajax - Fórum iMasters

    • Curtir 1
  7. Boa tarde!

     

    Este link:

    <a href="pesGeral.php?action=excluir?nfiscal=<?php echo $nota; ?>

    Não deveria ser:

    <a href="pesGeral.php?action=excluir&nfiscal=<?php echo $nota; ?>

    E se você tiver utilizando url amigável, para pegar via get tem que ter alguns cuidados, por exemplo, se sua função que cuida do url amigável tiver esta aparência:

    function getUrl() {
        $url = @$_GET['url'];
        $url = explode("/", $url);
        $url[0] = ($url[0] == NULL) ? 'index' : $url[0];
    
        if (file_exists('arquivos/' . $url[0] . '.php'))
            require_once('arquivos/' . $url[0] . '.php');
        elseif (file_exists('arquivos/' . $url[0] . '/' . $url[1] . '.php'))
            require_once('arquivos/' . $url[0] . '/' . $url[1] . '.php');
        else
            require_once('arquivos/404.php');
    }

    Você teria que especificar a url de outro jeito, por exemplo:

    <td><a href="scripts/excluirNota/<?= echo $nota; ?>/<?= echo $id; ?>"><img src="img/delEmp.png" width="25" class="excNota"/></a></td>

    Daria para recuperar a nota pegando o $url[2] e o id pegando o $url[3].

  8. Boa tarde!

     

    É o seguinte, a princípio, estou carregando uma tabela com dados mysql via ajax:

    function fetch_data() {
                    $.ajax({
                        url: "docentes/select.php",
                        method: "POST",
                        success: function (data) {
                            $('#live_data').html(data);
                        }
                    });
                }

    E em seguida faço manipulações para atualizar os dados, com isso, tudo certo. Entretanto, existe um campo da tabela que é para data, resolvi utilizar o Datepicker para deixar o campo mais elegante com a utilização de um calendário, se deparei com um problema ao utilizar vários Datepickers na mesma página, entretanto, designei uma ID única para cada input e uma classe igual para todos os inputs, classe a qual serviria de seletor para chamar a função datepicker, só que outro problema surge nessa jornada, este acontece por não estar executando a chamada da função datepicker, contudo, o seletor está correto, tem o mesmo identificador que o das classes dos inputs, não compreendo o por quê desse problema, por favor, peço vossa ajuda para a solução de meu problema, seguem códigos logo abaixo:

    $(document).ready(function(){
            $(".datepicker").datepicker({
                dateFormat: "dd/mm/yy"
            });
      )};

    Já tentei pôr eventos no input do DatePicker:

    <div class="input-group">
       <input type="text" id="date_'.$inc.'" class="form-control datepicker" onmouseover="acionaDatePicker(\'#date_'.$inc.'\')" 
                        data-id="' . $Docente['id'] . '" data-before="' . $date . '" value="'.$date.'"/>
    </div>

    e no javascript:

    function acionaDatePicker(seletor){
                $(seletor).datepicker({
                    dateFormat: "dd/mm/yy"
                });
    }

    É como se não executasse o código do javascript nos dois casos.

     

    Arquivos:

    Código gerador de tabela com informações do banco, mais tarde será carregada com auxilio do ajax via POST na div de id = "live_data":

    Spoiler
    
    <?php
    require('../../dts/dbaSis.php');
    $readDocentes = read('docentes', 'ORDER BY admissao DESC');
    $output = '
    <table class="table table-bordered">
        <thead>
            <tr>
                <th>NOME</th>
                <th>SOBRENOME</th>
                <th>E-MAIL</th>
                <th>CURSO</th>
                <th>CENTRO DE REFERÊNCIA</th>
                <th>ADMISSÃO</th>
                <th>AÇÃO</th>
            </tr>
        </thead>
    ';
    if (count($readDocentes) > 0) {
        $output .= '<tbody>';
        $inc = 0;
        foreach ($readDocentes as $Docente) :
            $output .= '
            <tr>
                <td class="nome" data-id="' . $Docente['id'] . '" data-before="' . $Docente['nome'] . '" contenteditable>' . $Docente['nome'] . '</td>
                <td class="sobrenome" data-id="' . $Docente['id'] . '" data-before="' . $Docente['sobrenome'] . '" contenteditable>' . $Docente['sobrenome'] . '</td>
                <td class="email" data-id="' . $Docente['id'] . '" data-before="' . $Docente['email'] . '" contenteditable>' . $Docente['email'] . '</td>
                <td class="curso" data-id="' . $Docente['id'] . '" data-before="' . $Docente['curso'] . '" contenteditable>' . $Docente['curso'] . '</td>
                <td>
                    <select class="centro form-control" data-id="' . $Docente['id'] . '" data-before="' . $Docente['centro_ref'] . '">
                        <option></option>';
            $readCentro = read('centros_ref', '');
            if ($readCentro) {
                foreach ($readCentro as $Centro):
                    if ($Centro['id'] == $Docente['centro_ref']) {
                        $output .= '<option value="' . $Centro['id'] . '" selected="selected">' . $Centro['nome'] . '</option>';
                    } else {
                        $output .= '<option value="' . $Centro['id'] . '">' . $Centro['nome'] . '</option>';
                    }
                endforeach;
            }
            $date = date('d/m/Y', strtotime($Docente['admissao']));
            $output .= '</select>
                </td>
                <td class="date">
                    <div class="input-group">
                        <input type="text" id="date_'.$inc.'" class="form-control datepicker" onmouseover="acionaDatePicker(\'#date_'.$inc.'\')" 
                        data-id="' . $Docente['id'] . '" data-before="' . $date . '" value="'.$date.'"/>
                    </div>
                </td>
                <td class="text-center"><button name="btn_delete" id="btn_delete" class="btn btn-xs btn-danger" data-id="' . $Docente['id'] . '">
                <i class="glyphicon glyphicon-trash"></i></button></td>
            </tr>
            ';
        $inc++;
        endforeach;
    } else {
        $output .= '<tbody><tr>NÃO EXISTEM REGISTROS DE DOCENTES!</tr>';
    }
    $output .= '
        <tr>
            <td id="nome" contenteditable></td>
            <td id="sobrenome" contenteditable></td>
            <td id="email" contenteditable></td>
            <td id="curso" contenteditable></td>
            <td>
                    <select id="centro" class="form-control">
                        <option></option>';
    $readCentro = read('centros_ref', '');
    if ($readCentro) {
        foreach ($readCentro as $Centro):
            $output .= '<option value="' . $Centro['id'] . '">' . $Centro['nome'] . '</option>';
        endforeach;
    }
    $output .= '</select>
                </td>
            <td class="date">
                <div class="input-group" >
                    <input type="text" class="form-control" id="datetimepicker3" onmouseover="acionaTimepicker()"/>
                </div>
            </td>
            <td class="text-center"><button id="btn_add" class="btn btn-xs btn-success"><i class="glyphicon glyphicon-plus"></i></button></td>        
        </tr>
        ';
    $output .= '</tbody></table>';
    echo $output;
    ?>

     

     

    Página onde serão exibidos os dados:

    Spoiler
    
    <div class="table-responsive">
        <h3>Gerenciamento de Docentes</h3>
        <div id="live_data"></div>
        <input type="text" class="form-control datepicker" />
    </div>

     

     

    Página onde ficam os códigos JAVASCRIPT:

    Spoiler
    
    <script src="<?php setHome(); ?>/js/jquery.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
    <script src="js/bootstrap.js"></script>
    
    <!-- TABELA COM DADOS CARREGADOS VIA AJAX -->
    <?php
    $url = stripslashes($_GET['exe']);
    $url = explode('/', $url);
    if ($url[1] == 'new-doc-edit') {
        ?>
        <script>
            $(document).ready(function () {
                function fetch_data() {
                    $.ajax({
                        url: "docentes/select.php",
                        method: "POST",
                        success: function (data) {
                            $('#live_data').html(data);
                        }
                    });
                }
    
                fetch_data();
                $(document).on('click', '#btn_add', function () {
                    var nome = $('#nome').text(),
                        sobrenome = $('#sobrenome').text(),
                        email = $('#email').text(),
                        curso = $('#curso').text(),
                        centro_ref = $('#centro').val(),
                        admissao = $('#datetimepicker3').val();
                    if (nome == '' || sobrenome == '' || email == '' || curso == '' || centro_ref == '' || admissao == '') {
                        return false;
                    }
                    $.ajax({
                        url: "docentes/insert.php",
                        method: "POST",
                        data: {
                            nome: nome,
                            sobrenome: sobrenome,
                            email: email,
                            curso: curso,
                            centro_ref: centro_ref,
                            admissao: admissao
                        },
                        dataType: "text",
                        success: function () {
                            alert('Dados adicionados com sucesso!');
                            fetch_data();
                        }
                    });
                });
    
                function update(id, text, column_name) {
                    $.ajax({
                        url: "docentes/update.php",
                        method: "POST",
                        data: {
                            id: id,
                            text: text,
                            column_name: column_name
                        },
                        dataType: "text",
                        success: function () {
                            alert('Dados atualizados com sucesso!');
                        }
                    });
                }
    
                $(document).on('blur', '.nome', function () {
                    var id = $(this).data("id"),
                        text = $(this).text(),
                        before = $(this).data("before");
                    if (before != text) {
                        update(id, text, "nome");
                    }
                });
    
                $(document).on('blur', '.sobrenome', function () {
                    var id = $(this).data("id"),
                        text = $(this).text(),
                        before = $(this).data("before");
                    if (before != text) {
                        update(id, text, "sobrenome");
                    }
                });
    
                $(document).on('blur', '.email', function () {
                    var id = $(this).data("id"),
                        text = $(this).text(),
                        before = $(this).data("before");
                    if (before != text) {
                        update(id, text, "email");
                    }
                });
    
                $(document).on('blur', '.curso', function () {
                    var id = $(this).data("id"),
                        text = $(this).text(),
                        before = $(this).data("before");
                    if (before != text) {
                        update(id, text, "curso");
                    }
                });
    
                $(document).on('blur', '#datetimepicker4', function () {
                    var id = $(this).data("id"),
                        val = $(this).val(),
                        before = $(this).data("before");
                    if (before != val) {
                        update(id, val, "admissao");
                    }
                });
    
                $(document).on('blur', '.centro', function () {
                    var id = $(this).data("id"),
                        val = $(this).val(),
                        before = $(this).data("before");
                    if (before != val) {
                        update(id, val, "centro_ref");
                    }
                });
    
                $(document).on('click', '#btn_delete', function () {
                    var id = $(this).data("id");
                    $.ajax({
                        url: "docentes/delete.php",
                        method: "POST",
                        data: {
                            id: id
                        },
                        dataType: "text",
                        success: function () {
                            alert('Dados apagados com sucesso!');
                            fetch_data();
                        }
                    });
                });
            });
        </script>
    <?php } ?>
    
    <script>
        $(document).ready(function(){
            $(".datepicker").datepicker({
                dateFormat: "dd/mm/yy"
            });
            function acionaDatePicker(seletor){
                $(seletor).datepicker({
                    dateFormat: "dd/mm/yy"
                });
            }
        });
    </script>

     

     

    Caso eu não tenha sido claro quanto a minha dúvida, por favor, informem.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!