Ir para conteúdo
Jeferson775

Criação de modelos e tabelas dinâmicas

Recommended Posts

Pessoal bom dia!

Estou com a seguinte problema....

Preciso realizar o download de uma planilha modelo para o usuário que ele possa editar e colocar os campos que ele precisa para importar ( realizar o download do modelo csv e realizar o upload do csv onde o cabeçalho e informado pelo usuário)... 

 

Bem, este é o primeiro ponto... O segundo é ler estes campos que são dinâmicos e exibir para o usuário... Estou perdido... Qual o melhor modo de realizar estes procedimentos? Obrigada galera!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora


  • Conteúdo Similar

    • Por Toni Stark
      Olá!
       
      Eu tenho duas tabelas, uma com os nomes dos administradores e outra com os horários que eles estão online, exemplo:

      TB_ADMINISTRADORES
      ID         = 10
      NOME = adm1
      ===========================
      TB_HORARIOS
      ID              =1
      IdAdmim = 10
      DIA           = Segunda
      Começa  = 08:00
      Termina  = 12:00

      ID              = 2
      IdAdmim = 10
      DIA           = Segunda
      Começa  = 13:00
      Termina  = 17:00

      ID              = 3
      IdAdmim = 10
      DIA           = Terça
      Começa  = 08:00
      Termina  = 17:00
      ==========================================
      Um administrador pode ter quantos horários precisar, minha dúvida é a seguinte, como eu posso mostrar os nomes dos administradores e se eles estão onlines naquele momento? Alguém teria uma ideia?

      Desde já agradeço, valeu.
    • Por Sidnei da Silveira
      Boa tarde,
       
      Faz muito tempo que não programo, e agora fui tentar fazer um "leitor" de CSV para facilitar meu trabalho na hora de imprimir os dados que recebo em CSV.
      Atualmente, abro o CSV no excel, edito para visualizar melhor os dados e imprimo, mas estou quebrando cabeça com os array, while ou for... não consegui mais render.
       
      Tenho o CSV (link para o CSV)
      Exemplo de como deixo no excel (Link para arquivo diagramado no excel)
      Consegui expor na tabela (conforme visto aqui)
      Mas eu queria fazer diagramado como neste PDF (link para o PDF)
       
      Visto o PDF,
       
      Em qual parte tenho que colocar o laço, para pular os dados repetidos deixando o visual mais limpo?
      <html> <head> <meta charset="UTF-8"> <title>oi</title> </head> <body> <table border="1"> <tr> <th>1</th> <th>2</th> <th>3</th> <th>4</th> <th>5</th> <th>6</th> </tr> <?php $row = 1; if (($handle = fopen("csv-teste-sidnei.csv", "r")) !== FALSE) { while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { $num = count($data); // echo "oi $num campos na linha $row:eeeeeeeee \n"; $row++; for ($c=0; $c < $num; $c++) { $texto = explode(";", $data[$c]); echo "<tr>\n"; echo "<td>".$texto[0]."</td>\n"; echo "<td>".$texto[1]."</td>\n"; echo "<td>".$texto[2]."</td>\n"; echo "<td>".$texto[3]."</td>\n"; echo "<td>".$texto[4]."</td>\n"; echo "<td>".$texto[5]."</td>\n"; echo "</tr>\n"; } } fclose($handle); } ?> </table> </body> </html>  
       
    • Por Lutti Lutter
      Preciso alterar um arquivo, e selecionar todos os dados de uma tabela.
      Quando eu seleciono estados por exemplo, ele abre as cidades por estado que escolhi, e tenho que selecionar apenas uma cidade.. Mas eu quero ao selecionar um estado,  SELECIONAR TODAS AS CIDADES do estado que eu selecionar, e NÃO de selecionar apenas uma cidade.
       
      Segue script
       
      <div class="head">
          <span id="title" style="color:black;">{l_choose_a_city}</span>
          <a id="choose_city_close" class="icon_close" href=""></a>
      </div>
      <div class="cont">
          <ol id="selectable">
              {list_options}
          </ol>
      </div>
      <div class="foot">
          <a id="back_item" data-type="" class="back" href="#">{l_back_to_states}</a>
          <input id="choose_ok" type="button" class="btn blue fl_right" value="{l_ok}" />
      </div>
      <script>
      var param = ['geo_countries', 'geo_states', 'geo_cities'],
          param_geo = ['{country_id}', '{state_id}', '{city_id}'],
          param_list = ['', '', '{list_options_js}'],
          param_geo_set,
          param_list_set,
          title_back = ['{l_back_to_countries}', '{l_back_to_states}'],
          title = ['{l_choose_a_country}', '{l_choose_a_state}', '{l_choose_a_city}'];
          pp_choose_city = $('#pp_choose_city'),
          selectable = $('#selectable'),
          selectable_li = $('#selectable li'),
          back_item = $('#back_item'),
          title_head = $('#title'),
          choose_ok = $('#choose_ok'),
          step = 2,
          title_city = '',
          searchFilter=$('#filter_module_location_title'),
          isSearchFilter=searchFilter[0]?1:0,
          userNoCity = '{user_no_city}',
          opt=.6;
          if(typeof param_geo_init != 'undefined') {
              param_geo = param_geo_init;
          }
          param_geo_set = param_geo.concat();
          param_list_set = param_list.concat();
          selectable.scrollTo('#{selected_options}');
          $('.profile_city_choose').click(function(){
              setCountry();return false;
          });
          $('#choose_city_close').click(function(){
              pp_choose_city.close();return false;
          });
          choose_ok.click(function (){
              pp_choose_city.close();
              if (param_geo_set[2] != param_geo[2] || (userNoCity*1 && !isSearchFilter)) {
                  userNoCity = 0;
                  param_geo_set = param_geo;
                  param_list_set = param_list;
                  title_city = $('#selectable li.selected').text();
                  // search page filter
                  var filter=$('#filter_module_location_title');
                  if(filter[0]) {
                      filter.text(title_city);
                      $('.find_new_friends_in_city_now').html(tmplCityTitle.replace('\{city\}', title_city));
                      $('#filter_country').val(param_geo[0]);
                      $('#filter_state').val(param_geo[1]);
                      $('#filter_city').val(param_geo[2]);
                      if(filterCityValue != param_geo[2]) {
                          filterCityValue = param_geo[2];
                          $(moduleFilterClass).change();
                      }
                      return false;
                  }
                  $.post('{url_main}ajax.php', {cmd: 'geo_param_map', country: param_geo[0], state: param_geo[1], city: param_geo[2]}, geo_map);
                  //$('#selectable li').off('click');
                  //pp_choose_city.remove();
              }
              return false;
          });
          $('.pp_body').on('click', function(e){
              if(e.target==this
                 &&$('#pp_choose_city:visible')[0]
                 &&param_geo_set[2]==param_geo[2]){
                  pp_choose_city.close()
              }
          })
          function geo_map(res)
          {
              var data=checkDataAjax(res);
              if(data){
                  var map=$('#map_title'),filter=$('#filter_module_location_title');
                  if(map[0]){
                      map.text(title_city+', '+data.country);
                      load_map(data.lat/{ip_multiplicator}, data.long/{ip_multiplicator});
                  }
              }else{}
          }
          function load_map(lat, long)
          {
              var pic = new Image(),
                  map = $('#profile_map');
                  src = "http://maps.googleapis.com/maps/api/staticmap?markers=color:red%7Clabel:%7C"+lat+","+long+"&center="+lat+","+long+"&zoom=10&size=459x277&sensor=false&scale=1";;
              map.attr('src', '{url_tmpl_main}images/airplane.gif');
              pic.src = src;
              var mapBox = $('#profile_map_box'),
                  isHideMap = parseInt(mapBox.css('height')) == 0,
                  dur = (isHideMap) ? 1 : 1600;
              $(pic).load(function(){
                  map.hide().attr('src', src).fadeIn(dur,function(){
                      if (isHideMap) {
                          mapBox.animate({height:'277px'},300);
                      }
                  });
              });
          }
          function setCountry()
          {
              step=2;
              delete param_geo;
              delete param_list;
              param_geo = param_geo_set.concat();
              param_list = param_list_set.concat();
              title_head.text(title[2]);
              back_item.html(title_back[1]).show();
              $('#'+param_geo[2]).addClass('selected').siblings().removeClass('selected');
              selectable.html(param_list[2]).scrollTo('#'+param_geo[2]);
              choose_ok.hide();
              choose_ok.show();
              pp_choose_city.open();
          }
          back_item.click(function(){
              var select_id, list;
              if (step == 1) {
                  back_item.hide();
              }
              selected = param_geo[step-1];
              select_id = (step>1) ? param_geo[step-2] : param_geo[0];
              list = param_list[step-1];
              choose_ok.hide();
              if (list != '') {
                  step--;
                  selectable.html(param_list[step]).scrollTo('#'+param_geo[step]);
                  back_item.html(title_back[step-1]);
                  title_head.text(title[step]);
              } else {
                  selectable.fadeTo(0,opt);
                  $.post('{url_main}ajax.php', {cmd: param[step-1], select_id: select_id, selected: selected, filter:isSearchFilter}, update_list_back);
              }
              return false;
          })
          var update_list_back = function(res)
          {
              var data=checkDataAjax(res);
              if(data){
                  step--;
                  param_list[step] = data.list;
                  selectable.html(data.list).fadeTo(0,1).scrollTo('#'+param_geo[step]);
                  back_item.html(title_back[step-1]);
                  title_head.text(title[step]);
              }else{}
          }
          $('body').on('click', '#selectable li', change);
          function change(){
              var select_id = $(this).attr('id');
              $(this).addClass('selected').siblings().removeClass('selected');
              param_list[step] = selectable.html();
              back_item.html(title_back[step]).show();
              title_head.text(title[step+1]);
              if (step == 2) {
                  param_geo[step] = select_id;
                  choose_ok.show();
              } else {
                  if (param_geo[step] != select_id) {
                      param_geo[step] = select_id;
                      selectable.fadeTo(0,opt);
                      $.post('{url_main}ajax.php', {cmd: param[step+1], select_id: select_id, filter:isSearchFilter}, update_list);
                  } else {
                      step++;
                      selectable.html(param_list[step]).scrollTo('#'+param_geo[step]);
                  }
              }
          }
          var update_list = function(res)
          {
              var data=checkDataAjax(res);
              if(data){
                  step++;
                  param_list[step] = data.list;
                  selectable.html(data.list).fadeTo(0,1).scrollTo(0);
                  if (step==2) {
                      var item=$('#selectable > li');
                      if(item.length==1){item.click()}
                  }
              }else{}
          }
      </script>
    • Por TeixeiraRamos
      Vou tentar explicar o que já estou tentando há dias e não estou tendo êxito.
      Os dados são hipotéticos pois do contrário ficaria mais difícil para entender.
      Tenho um banco de dados em MySQL, funcionando corretamente, a pagina em ASP.
      Meu problema arrumar os registros na tabela não é problema com ASP ou MySQL.
       
      Vamos supor um campo chamado de "mes_calendario" que gera os registros  Jan,  Fev,  Mar, ... Dez
      Em seguida tem os campos chamados:
      setor_a
      setor_b
      setor_c
      setor_d
      setor_e
      setor_f
      setor_g
      setor_h 
      setor_i
      setor_j
      setor_k
      setor_l
      setor_m
      setor_n
      setor_o
      Cada um setor acima pode conter um valor de 0 a n. em um determinado dia de um mês.
      A tabela está em ordem de mês.
      Quando uso a SQL:
      SUM(setor_a) AS t_setor_a Ele soma todos os valores  "setor_a" daquele mês que foi cadastrado e assim sucessivamente para os os outros setores.
      Considerando que os setores estão na linha horizontal da tabela, esteticamente fica muito ruim e inviabilizar a criação da tabela.
      Observe esse exemplo que não é viável considerando a quantidade de dados horizontalmente: 
      | Mês/Setor | setor_a | setor_b | setor_c | ............................................................
      |      Jan        |     1        |     0        |     2        |.............................................................
      |      Fev        |      0       |     5        |     7        |.............................................................
      |      Mar       |      0       |     2        |   10        |............................................................
      |      Abr        |      8       |     5        |     4        |...............................................
      Essa estrutura da tabela que abre com todos os registros, mas não é viável.
      <table width="100%" border="1" cellpadding="1" cellspacing="0"> <thead> <tr bgcolor="#999999" > <td>Mês/Setor</td> <td>Setor_a</td> <td>Setor_b</td> <td>Setor_c</td> . . . . . . . . . . <tr> <% if not rs.eof then do while not rs.eof %> <tr> <td><%=rs("mes_calendario")%></td> <td><%=rs("t_setor_a")%></td> <td><%=rs("t_setor_b")%></td> <td><%=rs("t_setor_c")%></td> . . . . . . . . . . . . . . </tr> <% rs.MoveNext Loop end if %>  
       
      Acontece que não é isso que desejo, tenho que inverter os registros mostrados na tabela, ou seja, na vertical ficar  "Setor/Mês" e na horizontal os meses, gerando a tabela:
      | Setor/Mês | Jan | Fev | Mar | Abr |
      |    setor_a   |     1  |   0   |    0   |   8   |
      |    setor_b   |    0   |  5    |   2    |   5   |
      |    setor_c   |    2   |  7    |  10   |   4   |
       
      Com isso a tabela não ficaria na horizontal tão grande, ou seja, com uma coluna com título "Setor/Mês" mais 12 colunas, total 13 colunas ao invés de 15 conforme meu exemplo, mas na realidade meu banco tem mais "setores" sendo inviável construir horizontalmente. 
      Observação: Não desejaria dividir a tabela em duas.
       
      Como estou criando e não estou acertando
       
       
      <table border="1"> <thead> <% If not rsteste.eof then do while not rsteste.eof %> <tr> <th>Setor/Mês</th> <td><%=rsteste("mes_calendario")%></td> </tr> <tr> <th>Setor a</th> <td><%=rsteste("t_setor_a")%></td> <th>Setor b</th> <td><%=rsteste("t_setor_b")%></td> <th>Setor c</th> <td><%=rsteste("t_setor_c")%></td> </tr> <% rsteste.MoveNext Loop end if %> </thead> </table> Desculpe o tamanho da postagem.
    • Por Plínio De Souza Neto
      Boa tarde galera,

      Criei um Script para o Indesign usando o JavaScript, contudo não estou sabendo criar um ultimo comando para concluir ele:

       
      Esse meu script me entrega esse res ultando:

       
      Mas preciso que os "R$" também fiquem alinhados alguém poderia me auxiliar.

      Att. 

      Plinio Souza
       
       
       

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.

Este projeto é mantido e patrocinado pelas empresas:
Hospedado por: