Jump to content
Fórum Script Brasil
  • 0

Duvida Simples com a criação de tabela HTML dinâmica em PHP


PedroRapucci

Question

Gente já usei o form para outras duvidas e sempre fui bem recebido e consegui graças a vocês fazer o que precisava.
Dessa vez estou com uma duvida bem simples e creio que para vocês podem ser bem simples e idiota mas não consigo fazer.
É o seguinte, eu vou receber uma POST com o seguinte dado
ex:
Nome`s`Sobre Nome`s`Telefone/nPedro`s`Marques`s`1981234556/nGustavo`s`Silva`s`19938273647
Eu quero fazer uma tabela em html usando PHP e não script js.
Considerando que o `s` é um separador de coluna e o /n é um separador de linha.
A primeira ocorrência (linha) é o cabeçalho.
Preciso de um código que faça uma tabela desses valores, a quantidade de coluna e linha não são fixas, posso enviar dados com 4, 5 ou 6... colunas e linhas indeterminadas. Então essa tabela tem que ser dinâmica fazer na necessidade.
Tenho um Script js, que faz isso. Mas não consigo adaptar para o meu outro código então prefiro que seja feito por um cogido PHP.
Vou colocar o script que tenho para ajudar na solução.

<!doctype html>
<head>
  <meta name="author" content="Pedro Rapucci">
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">

  <title>Table Layout</title>
  <style type="text/css">
   table       { border-collapse:collapse; }
   table,th,td { border:1px solid #000; }
   th          {
background-color: #999;
color: #FFF;
}
  </style>
</head>

<body>
  <div id="myTable"></div>
  <script>
    // get the table to display from the window.AppInventor object and split at new line
    var texto = "Nome`s`Telefone`s`E-mail\nPedro`s`1994839304`s`pedro@gmail.com\nGustavo`s`19938274938`s`gustavo@gmail.com";
var urlArray = window.texto.split("\n");

    var doc = document;
    var fragment = doc.createDocumentFragment();

    for(i=0;i<urlArray.length;i++){
      var tr = doc.createElement("tr");
      // split at comma
      var rowArray = urlArray[i].split("`s`");

      for(j=0;j<rowArray.length;j++){
        if ( i == 0) { var td = doc.createElement("th"); }
        else         { var td = doc.createElement("td"); }
        td.innerHTML = rowArray[j];
        tr.appendChild(td);
        fragment.appendChild(tr);
      }
    }
    var table = doc.createElement("table");
    table.appendChild(fragment);
    doc.getElementById("myTable").appendChild(table);
  </script>
</body>
</html>
Apos fazer esse tabela eu enviaria ela por e-mail. Eu já tenho um código para enviar por email, esse código é bem simples e funciona bem, eu só tenho que colocar o nome do remetente, o e-mail, o e-mail do destinatário, um assunto e a mensagem. Todos esses campos são variáveis que vou especificar com um POST contendo essas informações. Então esse código da criação da tabela tem que estar fazendo referencia a variável $mensagem.
Se tiver outra ideia para me ajudar estou aberto.
Obrigado, mais uma vez.
Edited by PedroRapucci
Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.1k
    • Total Posts
      652k
×
×
  • Create New...