Jump to content
juniorquadros

Limitar Colunas e/ou linhas da tabela com preenchimento do Array

Recommended Posts

Tenho uma string, leio ela e queria apresentar ela com limitador na tabela. 

Exemplo:

 

string com tal conteudo: "ABCDEFG"

 

ADF

BEG

CE

 

Estou usando apenas php e html, não sei se consigo realizar isto que quero. Me ajudem

Share this post


Link to post
Share on other sites

@juniorquadros, seja bem vindo ao fórum. Recomendo fortemente a leitura dos tópicos:

Com relação a sua dúvida, seja mais específico, pelo que entendi você quer "cortar" a string é isso ?

  • +1 1

Share this post


Link to post
Share on other sites
1 hora atrás, Alaerte Gabriel disse:

@juniorquadros, seja bem vindo ao fórum. Recomendo fortemente a leitura dos tópicos:

Com relação a sua dúvida, seja mais específico, pelo que entendi você quer "cortar" a string é isso ?

Sim, quero fatiar caracter por caracter da string e apresentar ela numa tabela, sendo essa tabela com no maximo 3 linhas.

Share this post


Link to post
Share on other sites
11 minutos atrás, Alaerte Gabriel disse:

Fiz dessa forma, porem nao consegui inserir dentro de tabela da forma que quero

<?php

$senha="FUJAM TODOS FOMOS DESCOBERTOS";
$numero_string= strlen($senha);
$variavel = explode(" ", $senha);

/*echo $variavel[0];*/

$result = $variavel[0];

?>
<html>
<head>
    <title></title>
</head>
<body>
    <table> 
    
        <?php for ($i =0; $i <=$numero_string; $i++) {
            echo "$senha[$i]<br>";    
        }?>

</body>
</html>

 

Edited by Alaerte Gabriel
Adição da tag CODE

Share this post


Link to post
Share on other sites

Você tem que contar o array com o count após ele ser explodido e não a quantidade de caracteres. A variável $senha não é um array, ela apenas contém a quantidade de caracteres da string. Seu array é o $variavel.

  • +1 1

Share this post


Link to post
Share on other sites
7 minutos atrás, Alaerte Gabriel disse:

Você tem que contar o array com o count após ele ser explodido e não a quantidade de caracteres. A variável $senha não é um array, ela apenas contém a quantidade de caracteres da string. Seu array é o $variavel.

<?php

$senha="FUJAM TODOS FOMOS DESCOBERTOS";
$variavel = explode(" ", $senha);
$contavel = count($variavel);
/*echo $variavel[0];*/

$result = $variavel[0];

?>
<html>
<head>
	<title></title>
</head>
<body>
	<table> 

		<?php for ($i =0; $i <=$contavel; $i++) {
			echo "$variavel[$i]<br>";	
		}?>

</body>
</html>

Fiz dessa forma, porém o resultado ficou:

 

 

FUJAM
TODOS
FOMOS
DESCOBERTOS

 

 

Mas procuro que fique assim:

 

F A

U M 

J T

 

Desculpe, estou com dificuldade

 

 

 

Share this post


Link to post
Share on other sites

Se vai ter no máximo três linhas...

 

$string = 'FUJAM TODOS FOMOS DESCOBERTOS';
$string = str_replace(' ', '', $string);
$qtdString = strlen($string);

$tabela = [
          'linhaUm'   => '',
          'linhaDois' => '',
          'linhaTres' => ''
        ];

$linha = 0;

for ($contador = 0; $contador <= $qtdString; $contador++) {
    
    if ($linha == 0) {
        $tabela['linhaUm']   .= "<td>$string[$contador]</td>";
    } elseif ($linha == 1) {
        $tabela['linhaDois'] .= "<td>$string[$contador]</td>";
    } elseif ($linha == 2) {
        $tabela['linhaTres'] .= "<td>$string[$contador]</td>";
    }
    $linha++;
    if ($linha % 3 == 0) { $linha = 0; }
}
echo '<table border="1">';
echo '<tr>' . $tabela['linhaUm'] . '</tr>';
echo '<tr>' . $tabela['linhaDois'] . '</tr>';
echo '<tr>' . $tabela['linhaTres'] . '</tr>';
echo '</table>';

A saída sera:

F     A   O    S    M    D   C    E   O
U    M   D    F    O    E    O    R    S
J    T    O    O    S    S    B    T    

Share this post


Link to post
Share on other sites
32 minutos atrás, EdCesar disse:

Se vai ter no máximo três linhas...

 


$string = 'FUJAM TODOS FOMOS DESCOBERTOS';
$string = str_replace(' ', '', $string);
$qtdString = strlen($string);

$tabela = [
          'linhaUm'   => '',
          'linhaDois' => '',
          'linhaTres' => ''
        ];

$linha = 0;

for ($contador = 0; $contador <= $qtdString; $contador++) {
    
    if ($linha == 0) {
        $tabela['linhaUm']   .= "<td>$string[$contador]</td>";
    } elseif ($linha == 1) {
        $tabela['linhaDois'] .= "<td>$string[$contador]</td>";
    } elseif ($linha == 2) {
        $tabela['linhaTres'] .= "<td>$string[$contador]</td>";
    }
    $linha++;
    if ($linha % 3 == 0) { $linha = 0; }
}
echo '<table border="1">';
echo '<tr>' . $tabela['linhaUm'] . '</tr>';
echo '<tr>' . $tabela['linhaDois'] . '</tr>';
echo '<tr>' . $tabela['linhaTres'] . '</tr>';
echo '</table>';

A saída sera:

F     A   O    S    M    D   C    E   O
U    M   D    F    O    E    O    R    S
J    T    O    O    S    S    B    T    

 

Exatamente isso que eu precisava.

for ($contador = 0; $contador <= $qtdString; $contador++) {
    
    if ($linha == 0) {
        $tabela['linhaUm']   .= "<td>$string[$contador]</td>";
    } elseif ($linha == 1) {
        $tabela['linhaDois'] .= "<td>$string[$contador]</td>";
    } elseif ($linha == 2) {
        $tabela['linhaTres'] .= "<td>$string[$contador]</td>";
    }
    $linha++;
    if ($linha % 3 == 0) { $linha = 0; }
}

Nessa parte eu me perdi, se eu apagar os dois else if, irá apresentar a primeira linha apenas, com os seguintes caracteres "F     A   O    S    M    D   C    E   O" , no caso o controle de quantidade de linha está sendo feito pelo ultimo if? 

Share this post


Link to post
Share on other sites
19 minutos atrás, juniorquadros disse:

 


for ($contador = 0; $contador <= $qtdString; $contador++) {
    
    if ($linha == 0) { 
        $tabela['linhaUm']   .= "<td>$string[$contador]</td>"; /* Aqui simplesmente crio as colunas da primeira linha */
    } elseif ($linha == 1) { 
        $tabela['linhaDois'] .= "<td>$string[$contador]</td>"; /* Aqui simplesmente crio as colunas da segunda linha */
    } elseif ($linha == 2) {
        $tabela['linhaTres'] .= "<td>$string[$contador]</td>"; /* Aqui simplesmente crio as colunas da terceira linha */
    }
    $linha++;
    if ($linha % 3 == 0) { $linha = 0; } /* Não eram três linha? Então quando passar de três (linha mod 3), 
                                           eu volto para a primeira linha ($linha = 0) e crio uma nova coluna. */
}

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By manoaj
      Boa noite pessoal!
      Alguém ai entente dos checkouts do Mercado Pago pra me explicar como eu obtenho os dados da preferência criada através da url disponível na API
      https://api.mercadopago.com/checkout/preferences/:id?access_token=ACCESS_TOKEN_ENV  
    • By alan de souza arantes
      Boa tarde Galera!
       
      Tenho um cod que extrai relatórios do MYSQL em forma de Excel, meu problema é que quando o campo que busco esta vazio ele preenche com outra informação qualquer.
      Como eu resolvo isso?
       
      <?php
      include("../conexao_checkout.php");

      session_start();
      $usuario     = $_SESSION['UsuarioID'];
      $usuario_nome  = $_SESSION['UsuarioNome'];
      $ip      = $_SERVER["REMOTE_ADDR"];
      $data_contratado       = date('Y-m-d H:i:s');
      $exibicao   = $_POST["exibicao"];
      $filtro     = $_POST["filtro"];
      $entrega    = $_POST["entrega"];
      $contrata   = $_POST["contrata"];
      if ($filtro > 0) {
          $cli = " AND `id_cliente` = ".$filtro;
      }else{
          $cli = "";
      }
      if ($entrega  != "") {
          $data2 = str_replace('/', '-', $entrega);
          $nova_data2 = strftime("%Y-%m-%d", strtotime($data2));
          $ent = "AND `prazo_entrega` LIKE '%".$nova_data2."%' ";
      }else{
          $ent = "";
      }
      if ($contrata  != "") {
          $data1 = str_replace('/', '-', $contrata);
          $nova_data = strftime("%Y-%m-%d", strtotime($data1));
          $cont = "AND `contratacao` LIKE '%".$nova_data."%' ";
      }else{
          $cont = "";
      }

      $results = mysqli_query($conexao, "SELECT * FROM `servicos_filiais` WHERE `tecnico_interno` = $usuario {$cli} {$ent} {$cont};");

      echo '
          <table class="table table-hover" style="display: none;">
                      <thead>
                          <th>ID</th>
                          <th>Ordem</th>
                          <th>COd Serviço</th>
                          <th>Nome Serviço</th>
                          <th>Cliente</th>
                          <th>Filial</th>
                          <th>Acompanhamento</th>
                          <th>Contratação</th>
                          <th>Solicitante</th>
                          <th>Coordenação</th>
                          <th>Técnico</th>
                          <th>Técnico interno</th>
                          <th>Total do Serviço</th>
                          <th>Total de Parcelas</th>
                          <th>Status</th>
                          <th>Observação</th>
                          <th>Data da Observação</th>                    
                      </thead>
                      <tbody>
                          
                      
        ';
      while ($row = mysqli_fetch_assoc($results)) {
          $id_cliente       = $row['id_cliente'];
          $id_servico_      = $row['id'];
          $id_filial        = $row['id_filial'];
          $id_coordenacao   = $row['coordenacao'];
          $id_tecnico       = $row['tecnico'];
          $id_tecnico_int   = $row['tecnico_interno'];
          $observacao       = $row['texto'];
          $data_3           = $row['data'];

          $consulta   = mysqli_query($conexao, "SELECT * FROM `clientes` WHERE `id` = {$id_cliente}; ");
          while ($row01 = mysqli_fetch_assoc($consulta)) {
              $nomedocliente = $row01['nome_cliente'];
          }
          $consulta01   = mysqli_query($conexao, "SELECT * FROM `filiais` WHERE `id` = {$id_filial}; ");
          while ($row02 = mysqli_fetch_assoc($consulta01)) {
              $nome_filial = $row02['nome_filial'];
          }
          $consulta02   = mysqli_query($conexao, "SELECT * FROM `login_funcionarios` WHERE `id` = {$id_coordenacao}; ");
          while ($row03 = mysqli_fetch_assoc($consulta02)) {
              $coordenacao = $row03['nome'];
          }
          $consulta03   = mysqli_query($conexao, "SELECT * FROM `login_funcionarios` WHERE `id` = {$id_tecnico}; ");
          while ($row04 = mysqli_fetch_assoc($consulta03)) {
              $tecnico = $row04['nome'];
          }
          $consulta04   = mysqli_query($conexao, "SELECT * FROM `login_funcionarios` WHERE `id` = {$id_tecnico_int}; ");
          while ($row05 = mysqli_fetch_assoc($consulta04)) {
              $tecnico_interno = $row05['nome'];
          }
          $consulta05   = mysqli_query($conexao, "SELECT * FROM `observacao_servicos` WHERE `id_servico` = {$id_servico_}; ");
          while ($row06 = mysqli_fetch_assoc($consulta05)) {
              $observacao_texto = $row06['texto'];
          }
          $consulta06   = mysqli_query($conexao, "SELECT * FROM `observacao_servicos` WHERE `id_servico` = {$id_servico_}; ");
          while ($row07 = mysqli_fetch_assoc($consulta06)) {
              $data_3 = $row07['data'];
          }
          $gerando_status = mysqli_query($conexao, "SELECT * FROM `detalhes_servico` WHERE `id_servico` = {$id_servico_}");
          $contar_parcelas = mysqli_num_rows($gerando_status);
          while($row3 = mysqli_fetch_assoc($gerando_status)){
              $status = $row3['status'];
              if(($status == 0) or ($status == 3) or ($status == 2)){
                  $nao_concluido += 1;
              }
          }
          // ---------------- STATUS ----------------- //
          if ($contar_parcelas == 1) {
              $busca_tipo_status = mysqli_query($conexao, "SELECT * FROM `detalhes_servico` WHERE `id_servico` = {$id_servico_} AND `tipo_servico` = 1");
              while ($row_busca_status = mysqli_fetch_assoc($busca_tipo_status)) {
                  $status_final = $row_busca_status['status'];
              }
          }
          if ($contar_parcelas == 2) {
              $busca_tipo_status = mysqli_query($conexao, "SELECT * FROM `detalhes_servico` WHERE `id_servico` = {$id_servico_} AND `tipo_servico` = 2");
              while ($row_busca_status = mysqli_fetch_assoc($busca_tipo_status)) {
                  $status_final = $row_busca_status['status'];
              }
          }
          if ($contar_parcelas == 3) {
              $busca_tipo_status = mysqli_query($conexao, "SELECT * FROM `detalhes_servico` WHERE `id_servico` = {$id_servico_} AND `tipo_servico` = 3");
              while ($row_busca_status = mysqli_fetch_assoc($busca_tipo_status)) {
                  $status_final = $row_busca_status['status'];
              }
          }
          if($status_final ==0){
              $nome_do_status = "A Protocolar";
          }
          if($status_final ==1){
              $nome_do_status = "Concluído";
          }
          if($status_final ==2){
              $nome_do_status = "Protocolado";
          }
          if($status_final ==3){
              $nome_do_status = "Em Andamento";
          }
          if($status_final ==4){
              $nome_do_status = "Pendência Forma";
          }
          if($status_final ==5) {
              $nome_do_status = "Pendência Cliente";
              
          }
          if($status_final ==6) {
              $nome_do_status = "Rescindido";
          }
          // ---------------- STATUS ----------------- //

          echo "<tr>";
          echo "<td>".$row['id']."</td>";
          echo "<td>".$row['ordem_de_servico']."</td>";
          echo "<td>".$row['id_servico']."</td>";
          echo "<td>".$row['nome_servico']."</td>";
          echo "<td>".$nomedocliente."</td>";
          echo "<td>".$nome_filial."</td>";
          echo "<td>".date('d/m/Y', strtotime($row['prazo_entrega']))."</td>";
          echo "<td>".date('d/m/Y', strtotime($row['contratacao']))."</td>";
          echo "<td>".$row['solicitante']."</td>";
          echo "<td>".$coordenacao."</td>";
          echo "<td>".$tecnico."</td>";
          echo "<td>".$tecnico_interno."</td>";
          echo "<td>".number_format($row['valor'], 2, ',', '.')."</td>";
          echo "<td>".$row['parcela_comissao']."</td>";
          echo "<td>".$nome_do_status."</td>";
          echo "<td>".$observacao_texto."</td>";
          echo "<td>".date('d/m/y', strtotime($data_3))."</td>";
          echo "</tr>";
      }
      echo '</tbody>
                  </table>
              
              ';
      echo '
        <script src="assets/js/jquery.table2excel.js"></script>
        <script>
          $(function() {
            $(".table").table2excel({
              exclude: ".noExl",
              name: "Lista de Serviços",
              filename: "lista_servicos",
              fileext: ".xls",
              exclude_img: true,
              exclude_links: true,
              exclude_inputs: true
            });
          });
        </script> 
        ';

      $insere_registro   = mysqli_query($conexao, "INSERT INTO `historico_acoes` (`id`, `nome_usuario`, `id_usuario`, `acao`, `ip`, `data`, `tipo`) VALUES (NULL, '{$usuario_nome}', {$usuario}, 'Exportou Relatório de serviços cadastrados', '{$ip}', '{$data_contratado}', 6);");

      mysqli_close($conexao);
      ?>
    • By asacap1000
      Salve galera, preciso de uma ajuda aqui....eu preciso trazer algumas fotos de usuarios que estão gravados em outro servidor e mostrar em uma página.
       
      O que estou usando inicialmente apenas para carregar as fotos e depois vou personalizar com outras funções. Mas o basico é esse:
       
      <? $diretorio = "//SRVCAMARAFRIA/Sistema de Acesso/AcessoNet/fotos/"; // esta linha não precisas é só um exemplo do conteudo que a variável vai ter // selecionar só .jpg $imagens = glob($diretorio."*.jpg"); // fazer echo de cada imagem foreach($imagens as $imagem){ echo '<a href="'.$imagem.'"><img src="'.$imagem.'" /></a>'; } ?> Ele busca as imagens mas não as mostra segue print do resultado:
       

       
      Se eu posicionar o cursor em cima de uma delas ela aparece no rodapé o caminho e o nome da foto
       

       
       
      O link para abrir ela eu nem preciso apenas para mostrar na tela, poderiam me ajudar?
       
      Desde já Agradeço.
    • By clickanapolis
      Boa tarde pessoal, desculpa se postei em lugar errado, mais não sei aonde postar essa minha dúvida. Estou finalizando um projeto que consiste em uma plataforma de processo seletivo e na etapa final os candidatos iram fazer uma prova online.
       
      O cliente me perguntou se é possível bloquear o navegador, tipo se ele sair do navegador ou mudar de aba tipo o sistema finalizar a prova do candidato, visto que o sistema irá identificar que ele foi fazer uma pesquisa.
       
      Eu particularmente não vi nada igual ate hj e não sei se existe algo seja em javascript ou qualquer outro modo de fazer isso.
    • By Ewfc2005
      Queria saber como faço para fazer um texto aparecer ao rolar a pagina
      igual ao desse site: https://ciesalon.com/services
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.