Tabela

Relação de BBCodes para incrementar seu phpBB3.
Avatar do usuário
Chico Gois
Administrador
Administrador
Mensagens: 3923
Registrado em: 03 Jul 2004, 03:53
Nome Real: Chico Gois
Localização: São Paulo - Capital
Contato:
MSG 1500+AvatarLenda
Você favoritou esta postagem

Tabela

  • Remover marcador da postagem
  • Mensagem por Chico Gois »

    Características:
    - Quantas linhas tu quiser.
    - Quantas colunas tu quiser.

    Uso:

    Código: Selecionar todos

    - Separa-se as linhas com L= e as colunas com &
    
    [tabela]
    L=Nome&Nick&Sexo
    L=Tiago&Sapporo&Masculino
    L=Laura&Witch&Feminino
    L=Cesar&Rasec&Masculino
    [/tabela]
    BBCode:

    Código: Selecionar todos

    [tabela]{TEXT}[/tabela]
    HTML:

    Código: Selecionar todos

    <script language="Javascript">
    var texto = '{TEXT}';
    texto = texto.replace("\r\n","");
    texto = texto.replace("<br>","");
    texto = texto.replace(" ","");
    var linha = new Array();
    linha = texto.split('L=');
    var table = '<div align="center"><TABLE width=70% cellpadding=1 cellspacing=1 border=0>';
    for (var i=1; i<linha.length; i++)
    {
      table = table + '<TR>';
      var coluna = new Array();
      coluna = linha[i].split('&');
      for (var j=0; j<coluna.length; j++)
      {
        if (i == 1)
        {
          table = table + '<TD align=center style="background: #FF8904; font-size:11px; color:black; font-family:  Verdana,Arial, Helvetica, sans-serif;"><b>' + coluna[j].replace("amp;","") + '</b></TD>';      
        }
        else
        {
          table = table + '<TD style="background: #878282; font-size:11px; color:white; font-family:  Verdana,Arial, Helvetica, sans-serif;">' + coluna[j].replace("amp;","") + '</TD>';      
        }
    
      }
      table = table + '<TR>';
    }
    table = table + '</TABLE></div>';
    document.write(table);
    </script>
    Obs.:

    O style pode ser alterado completamente.
    O primeiro style se refere ao cabeçalho da tabela e o segundo a todas as outras linhas

    Demo:
    L=Nome&Nick&Sexo L=Tiago&Sapporo&Masculino L=Laura&Witch&Feminino L=Cesar&Rasec&Masculino
    ghs_
    Novato
    Novato
    Mensagens: 11
    Registrado em: 25 Abr 2010, 11:53
    Você favoritou esta postagem

    Re: Tabela

  • Remover marcador da postagem
  • Mensagem por ghs_ »

    nossa super esse BBcode, era quase impossível fazer com HTML, com js fica muito bom, gostei
    Avatar do usuário
    AndréFF
    Membro Recente
    Membro Recente
    Mensagens: 307
    Registrado em: 24 Mar 2006, 23:52
    Localização: phpBB_users
    Contato:
    MSG 100+Avatar
    Você favoritou esta postagem

    Re: Tabela

  • Remover marcador da postagem
  • Mensagem por AndréFF »

    Pow, tava atrás disso a tempo.
    Tenho um BBcode de tabelas mas ele não funciona direito. Essa dai ta 100%

    VLW Chico ^^
    Again
    Membro Recente
    Membro Recente
    Mensagens: 243
    Registrado em: 01 Out 2010, 16:44
    MSG 100+Avatar
    Você favoritou esta postagem

    Re: Tabela

  • Remover marcador da postagem
  • Mensagem por Again »

    Nossa este bbcode é essencial! obrigado por compartilhar.
    brunovescovi
    Novato
    Novato
    Mensagens: 3
    Registrado em: 31 Jul 2012, 23:50
    Avatar
    Você favoritou esta postagem

    Re: Tabela

  • Remover marcador da postagem
  • Mensagem por brunovescovi »

    Bom dia, pessoal.

    Fiz uma pequena alteração nesse BBcode adicionando a possibilidade de configurar a largura da tabela em porcentagem, e também três opções de estilo preconfiguradas. Mas com base nisso pode-se deixar configuráveis todos os itens que quiser seguindo o mesmo raciocínio.

    BBCode:

    Código: Selecionar todos

    [tabela {INTTEXT1} {INTTEXT2}]{TEXT}[/tabela]
    HTML:

    Código: Selecionar todos

    <script language="Javascript">
        var texto = '{TEXT}';
        texto = texto.replace("\r\n","");
        texto = texto.replace("<br>","");
        texto = texto.replace(" ","");
        var linha = new Array();
        linha = texto.split('L=');
        var largura = '70';
        if ( ! isNaN('{INTTEXT1}') ) {
            if ( parseInt({INTTEXT1},10) > 0 && parseInt({INTTEXT1},10) <=100 ) {
                largura = '{INTTEXT1}';
            }
        }
        var estilo = '';
        var alinhamento = 'left';
        if ( '{INTTEXT2}' == '1'  || '{INTTEXT2}' == '2' )
        {
            estilo = ' style="background: #e0e0e0; font-size:11px; color:black; font-family:  Verdana,Arial, Helvetica, sans-serif;"';
            alinhamento = 'center';
        }
        var table = '<div align="' + alinhamento + '"><TABLE width=' + largura + '% cellpadding=1 cellspacing=1 border=0>';
        for (var i=1; i<linha.length; i++)
        {
          table = table + '<TR>';
          var coluna = new Array();
          coluna = linha[i].split('&');
          for (var j=0; j<coluna.length; j++)
          {
            if (i == 1 && '{INTTEXT2}' == '1')
            {
              table = table + '<TD align=center style="background: #000080; font-size:11px; color:white; font-family:  Verdana,Arial, Helvetica, sans-serif;"><b>' + coluna[j].replace("amp;","") + '</b></TD>';     
            }
            else
            {
                if ( '{INTTEXT2}' == '2' && i % 2 == 1 ) {
                    table = table + '<TD style="background: #d0d0d0; font-size:11px; color:black; font-family:  Verdana,Arial, Helvetica, sans-serif;">' + coluna[j].replace("amp;","") + '</TD>';
                } else {
                    table = table + '<TD' + estilo + '>' + coluna[j].replace("amp;","") + '</TD>';
                }
            }
    
          }
          table = table + '<TR>';
        }
        table = table + '</TABLE></div>';
        document.write(table);
    </script>
    Parabéns ao autor desse BBcode. Muito bem bolado e bem automatizado.

    A diferença no uso é que dentro dos colchetes da tag tabela deve haver mais duas informações. A primeira é um número, representando a porcentagem que vai definir a largura da tabela. O segundo valor de entrada é o número 0, 1 ou 2, representando o estilo escolhido.
    Qualquer valor de porcentagem fora do intervalo entre 0 e 100 será aplicado 70%.
    Qualquer valor de estilo a não ser 0, 1 ou 2, será considerado estilo 0.


    As modificações estão abaixo. Vou usar os mesmos dados que o bbcode original para demonstrar as alterações.

    =>Tabela 80% de largura, opção de layaout 0:
    Uso das tags:

    Código: Selecionar todos

    [tabela 80 0]L=Nome&Nick&Sexo
    L=Tiago&Sapporo&Masculino
    L=Laura&Witch&Feminino
    L=Cesar&Rasec&Masculino[/tabela]
    Preview:
    Imagem
    Comentário:
    Sem estilo. Para ser usado apenas como recurso de tabulação.
    Essa opção coloca o alinhamento da tabela para a esquerda, e cada célula também para esquerda.


    => Tabela 80% de largura, opção de layout 1:
    Uso das tags:

    Código: Selecionar todos

    [tabela 80 1]L=Nome&Nick&Sexo
    L=Tiago&Sapporo&Masculino
    L=Laura&Witch&Feminino
    L=Cesar&Rasec&Masculino[/tabela]
    Preview:
    Imagem
    Comentário:
    Estilo de cabeçalho. Apenas a primeira linha é centralizada e ressaltada.
    Essa opção coloca o alinhamento da tabela para o centro, e cada célula das demais linhas para a esquerda.


    => Tabela 80% de largura, opção de layout 2:
    Uso das tags:

    Código: Selecionar todos

    [tabela 80 2]L=Nome&Nick&Sexo
    L=Tiago&Sapporo&Masculino
    L=Laura&Witch&Feminino
    L=Cesar&Rasec&Masculino[/tabela]
    Preview:
    Imagem
    Comentário:
    Estilo de lista. Tabelas gerais sem cabeçalho, diferenciada por cores diferentes entre linhas.
    Essa opção coloca o alinhamento da tabela para o centro, e cada célula também para a esquerda.


    É minha primeira participação no fórum. Espero ter contribuído em retribuição ao conteúdo valioso que encontrei aqui neste fórum.
    Se alguém tiver qualquer sugestão ou correção, fique à vontade para fazê-lo.

    Um abraço.
    brunovescovi
    Novato
    Novato
    Mensagens: 3
    Registrado em: 31 Jul 2012, 23:50
    Avatar
    Você favoritou esta postagem

    Re: Tabela

  • Remover marcador da postagem
  • Mensagem por brunovescovi »

    Bom dia, pessoal.

    Uma correção.

    Alterei o caracter de separação das colunas pois fazia conflito quando inseria urls dentro das colunas, porque algumas urls usam o caracter &. Fiz alteração para usar o caracter § como separador entre colunas. O resto está igual.

    HTML:

    Código: Selecionar todos

        <script language="Javascript">
            var texto = '{TEXT}';
            texto = texto.replace("\r\n","");
            texto = texto.replace("<br>","");
            texto = texto.replace(" ","");
            var linha = new Array();
            linha = texto.split('L=');
            var largura = '70';
            if ( ! isNaN('{INTTEXT1}') ) {
                if ( parseInt({INTTEXT1},10) > 0 && parseInt({INTTEXT1},10) <=100 ) {
                    largura = '{INTTEXT1}';
                }
            }
            var estilo = '';
            var alinhamento = 'left';
            if ( '{INTTEXT2}' == '1'  || '{INTTEXT2}' == '2' )
            {
                estilo = ' style="background: #e0e0e0; font-size:11px; color:black; font-family:  Verdana,Arial, Helvetica, sans-serif;"';
                alinhamento = 'center';
            }
            var table = '<div align="' + alinhamento + '"><TABLE width=' + largura + '% cellpadding=1 cellspacing=1 border=0>';
            for (var i=1; i<linha.length; i++)
            {
              table = table + '<TR>';
              var coluna = new Array();
              coluna = linha[i].split('§');
              for (var j=0; j<coluna.length; j++)
              {
                if (i == 1 && '{INTTEXT2}' == '1')
                {
                  table = table + '<TD align=center style="background: #000080; font-size:11px; color:white; font-family:  Verdana,Arial, Helvetica, sans-serif;"><b>' + coluna[j].replace("amp;","") + '</b></TD>';     
                }
                else
                {
                    if ( '{INTTEXT2}' == '2' && i % 2 == 1 ) {
                        table = table + '<TD style="background: #d0d0d0; font-size:11px; color:black; font-family:  Verdana,Arial, Helvetica, sans-serif;">' + coluna[j].replace("amp;","") + '</TD>';
                    } else {
                        table = table + '<TD' + estilo + '>' + coluna[j].replace("amp;","") + '</TD>';
                    }
                }
    
              }
              table = table + '<TR>';
            }
            table = table + '</TABLE></div>';
            document.write(table);
        </script>
    Um abraço.
    Avatar do usuário
    robra
    Membro Sênior
    Membro Sênior
    Mensagens: 6065
    Registrado em: 02 Dez 2010, 23:29
    MSG 1500+Avatar
    Você favoritou esta postagem

    Re: Tabela

  • Remover marcador da postagem
  • Mensagem por robra »

    Beleza.
    Obrigado por compartilhar.

    Abraço. Imagem
    [DICA] Antes de abrir um Novo Tópico, procure saber se a sua dúvida já foi respondida. Pesquise no Google por palavras(em inglês também) relacionadas à ela, somado à palavra "phpbb".
    kknd
    Novato
    Novato
    Mensagens: 6
    Registrado em: 29 Abr 2011, 15:31
    Você favoritou esta postagem

    Re: Tabela

  • Remover marcador da postagem
  • Mensagem por kknd »

    ficou otimo, porém não da espaço pra nego meter um javascript injection no post ????
    brunovescovi
    Novato
    Novato
    Mensagens: 3
    Registrado em: 31 Jul 2012, 23:50
    Avatar
    Você favoritou esta postagem

    Re: Tabela

  • Remover marcador da postagem
  • Mensagem por brunovescovi »

    Bom dia, pessoal.
    kknd escreveu:ficou otimo, porém não da espaço pra nego meter um javascript injection no post ????
    Creio que não, porque as tags html, estilos, javascript e afins não são interpretados no campo de edição do fórum.
    Alguém pode até escrever código javascript, mas não será considerado como script, e sim como texto comum e sairá no post assim como foi escrito.

    Um abraço.
    Avatar do usuário
    jhugor
    Novato
    Novato
    Mensagens: 80
    Registrado em: 12 Jun 2016, 00:06
    MSG 50+Avatar
    Você favoritou esta postagem

    Re: Tabela

  • Remover marcador da postagem
  • Mensagem por jhugor »

    ola amigos, venho buscando uma solução para a questao de inserção de tabela em postagens atraves de bbcode a um bom tempo

    uso o phpbb3.2

    fiquei muito feliz quando vi este codigo aqui, porém, nenhum deles funcionou pra mim!

    alguém poderia me dar alguma ideia?

    muito obrigado
    Responder