android Postado Fevereiro 27, 2011 Denunciar Share Postado Fevereiro 27, 2011 galera como eu identifico cada linha de uma textarea comoum inputao invez de eu colocar varios inputs em um formulario eu colocaruma textarea e cada linha que for escrita gerar um input com um name diferente Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 vini_loock Postado Fevereiro 27, 2011 Denunciar Share Postado Fevereiro 27, 2011 Daria para dar um $primeiroArray = explode('\n', $_POST['textarea']), e depois jogar em um outro array com um for, tipo: $outroArray[] = '<input value=".$primeiroArray[$i].'">'; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 android Postado Fevereiro 27, 2011 Autor Denunciar Share Postado Fevereiro 27, 2011 explica ai mais ou menos como eu teria que fazer isso em um formulario Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Ensjo (Emerson Costa) Postado Fevereiro 28, 2011 Denunciar Share Postado Fevereiro 28, 2011 Explica melhor. Tem um formulário com um TEXTAREA, e queres que ele seja substituído por uma sequência de INPUT TYPE=TEXT.EM QUE MOMENTO tu queres que isso aconteça?ANTES de o formulário ser submetido (p.ex., quando o cursor sai do campo), ou DEPOIS, na resposta do servidor? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 android Postado Fevereiro 28, 2011 Autor Denunciar Share Postado Fevereiro 28, 2011 Ao formulario ser submetido. Tem comu? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Romerito Postado Fevereiro 28, 2011 Denunciar Share Postado Fevereiro 28, 2011 i aew android, beleza?então não entende a ideia da coisa, me parece algo bem desnecessário, mas vê se isso ajuda:<html> <head> <script type="text/javascript" language="javascript" src="jquery.js"></script> <script type="text/javascript" language="javascript"> window.onload = function(){ fortmatTextArea(); } function fortmatTextArea(){ var ta = document.getElementById('ta'); var botao = document.getElementById('botao'); botao.onclick = function(){ var form = document.forms[0] ; var linhas = ta.value.split(/\n/); var dynamicInput = null; for ( i in linhas ){ dynamicInput = criaInputText(form); dynamicInput.value = linhas[i]; alert('criou ' + i); } document.forms[0].submit(); } } function criaInputText(form){ var inp = document.createElement('input'); inp.setAttribute('type','text'); inp.setAttribute('name','dynamicInput[]'); form.appendChild(inp); return inp; } </script> </head> <body> <form method='post' action='form.php'> TextArea:<textarea rows='30' cols='50' id='ta' name="ta"/></textarea> <input type='button' id='botao' value='envia' /> </form> </body> </html>espero que ajude, abraço! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Ensjo (Emerson Costa) Postado Fevereiro 28, 2011 Denunciar Share Postado Fevereiro 28, 2011 Ao formulario ser submetido. Tem comu?O Romerito mostrou um jeito de fazer, mas realmente fica inútil. Porque se fazes isso quando o formulário é submetido, o resultado é que as caixinhas de texto que aparecem quase que não chegam a ser vistas, porque na sequência o navegador puxa uma nova página do servidor (o resultado do processamento do formulário).Seria bom se desses explicações mais detalhadas de como queres que a coisa funcione, porque está meio confuso. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 android Postado Fevereiro 28, 2011 Autor Denunciar Share Postado Fevereiro 28, 2011 olha eu to querendo criar um conversor de html para php iai eu teria que pegar cada linha do codigo html que fosse digitadoe abrir um echo para a conversao ser concluida mas para isso eu teria que criar varias inputs ai ficaria ruin ter que digitar cada linha do codigo htmlem cada input ai eu pensei que teria comu eu colar o codigo de uma vez em uma textarea e ai identificar cada linha com um inputera isso galera se voces poderem me ajudar eu agradeço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Ensjo (Emerson Costa) Postado Março 1, 2011 Denunciar Share Postado Março 1, 2011 (editado) Se é isso, a resposta do vini_loock já te respondia.Tu não precisas criar um INPUT para cada linha. Basta o TEXTAREA mesmo.Digamos que este seja o teu formulário:<form method="POST" action="processa.php"> <textarea name="codigoHTML"></textarea> </form> Depois disso, no script que processa o formulário (processa.php), bastaria dividir o texto do TEXTAREA com base nas quebras de linha, usando a função explode(): <?php $codigoHTML = $_REQUEST[ 'codigoHTML' ]; $arrayDeLinhas = explode( "\n", $codigoHTML ); $codigoPHP = ''; foreach( $arrayDeLinhas as $linha ) { $codigoPHP .= "echo '" . addslashes( $linha ) . "';\n"; } echo "<pre>\n{$codigoPHP}\n</pre>"; ?> Editado Março 1, 2011 por Ensjo (Emerson Costa) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 android Postado Março 1, 2011 Autor Denunciar Share Postado Março 1, 2011 e como eu vou dividir um name para cada linha Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 android Postado Março 1, 2011 Autor Denunciar Share Postado Março 1, 2011 Eu não sei usar javascript eu to aprendendo php. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Ensjo (Emerson Costa) Postado Março 1, 2011 Denunciar Share Postado Março 1, 2011 (editado) Nessa solução não tem um NAME para cada linha. É desnecessário. Tu não leste o código que te passei?Digamos que tenhas escrito isto no TEXTAREA:<html><body><p>Oi, tudo bem?</p></body></html>Depois de submeteres o formulário, o conteúdo do TEXTAREA vai parar dentro da variável $codigoHTML do programa em PHP: "<html>\n<body>\n<p>Oi, tudo bem?</p>\n</body>\n</html>".A função explode() divide esse conteúdo por quebras de linha ("\n") em um array, e esse array é armazenado na variável $arrayDeLinhas, cujo conteúdo então equivale a: array ("<html>", "<body>", "<p>Oi, tudo bem?</p>", "</body>", "</html>" ).Então, não precisas de NAME nenhum. Para acessar a primeira linha do TEXTAREA, basta escrever $arrayDeLinhas[0]. O conteúdo da segunda linha está em $arrayDeLinhas[1] e assim por diante.Depois o programa pega cada uma dessas linhas e cria um comando "echo" para cada uma delas.E essas linhas transformadas com "echo" são concatenadas na variável $codigoPHP, que afinal fica assim: "echo '<html>';\necho '<body>';\necho '<p>Oi, tudo bem?</p>';\necho '</body>';\necho '</html>';\n".E quando a gente imprime, o resultado é:echo '<html>';echo '<body>';echo '<p>Oi, tudo bem?</p>';echo '</body>';echo '</html>';Era isso que querias, não é? Gerar código PHP a partir de um HTML? Editado Março 1, 2011 por Ensjo (Emerson Costa) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 android Postado Março 1, 2011 Autor Denunciar Share Postado Março 1, 2011 Super vlw cara quando eu chegar em kasa eu vou testar. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
android
galera como eu identifico cada linha de uma textarea como
um input
ao invez de eu colocar varios inputs em um formulario eu colocar
uma textarea e cada linha que for escrita gerar um input com um name diferente
Link para o comentário
Compartilhar em outros sites
12 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.