Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fernandoamorim

Ler linha de um textarea

Recommended Posts

Olá pessoal...

 

estou com um problema...

 

preciso ler cada linha de um text area, separar as colunas por ",", e agrupar os valores das colunas...

 

fazr issu ae...

 

http://alvo.midiaweb.com.br/teste_upload/teste_upload3.php

 

este ae e um txt q faz upload.. eu consgui...

mais quero fazer o mesmo com um text area....

 

alguem sbe como??

 

 

abraços ae

Compartilhar este post


Link para o post
Compartilhar em outros sites

você coloca no form como post

 

e na pagina que tem o comando do php, você coloca

 

$campodetexto = $_POST['nome_do_text_no_html'];

Compartilhar este post


Link para o post
Compartilhar em outros sites

você coloca no form como poste na pagina que tem o comando do php, você coloca

$campodetexto = $_POST['nome_do_text_no_html'];
naum beleza.. issu eu sei.. hehehmais issu ele le todo o text area...quero ler so uma linha.. e separar por colunas o que estiver com virgula...entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas como vai ficar o texto do textarea ...assim:frase 1, frase 2, frase 3, n frases n virgulas ...?

Compartilhar este post


Link para o post
Compartilhar em outros sites

que nem eu coloquei no link la...tenho duas linhas assimfernando,19 anos, 21/02/1987,Varginha,MGfabiano,13 anos, 15/02/1993,Varginha,MGele me retornaria issuFernandoFabiano19anos13anos21/02/198715/02/1993VarginhaVarginhaMGMGsaca?ae dps eu vo listar desse jeito e fazer um relacionamento...ta coluna do meu txt, é tal campo do meu banco de dados.. e armazenar... entendeu +/-?

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim ... a lógica é simples, tu faz um for em cima da quantidade de caracteres do textarea, usando um split para pegar o conteudo entre as virgulas ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

pensei diferente...do um explode na variavel do textarea....$textarea = nl2br($_POST["cnt_import"]);$textarea = explode("<br>",$textarea);dps dou um foreach para contar as linhas.. e dentro explodo com a virgula

Compartilhar este post


Link para o post
Compartilhar em outros sites

$textarea = nl2br($_POST["cnt_import"]);$textarea = explode("<br>",$textarea);só que aí você vai ter um array assim:$textarea[1]="fernando,19 anos, 21/02/1987,Varginha,MG";$textarea[2]="fabiano,13 anos, 15/02/1993,Varginha,MG";Então tu teria que dar um explode na "," pra ter cada valor separado. daí tu dá um for pra ir exbindo cada valor na ordem de linhas. Entende?

Compartilhar este post


Link para o post
Compartilhar em outros sites

pensei diferente...do um explode na variavel do textarea....$textarea = nl2br($_POST["cnt_import"]);$textarea = explode("<br>",$textarea);dps dou um foreach para contar as linhas.. e dentro explodo com a virgula

também, também ...se voce ja sabe ... mãos a obra agora :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

ahuahau to prestando...

eu fiz pro txt assim

 

# CRIA A VARIÁVE DA LINHA COMO ARRAY								$linha = array();								# ABRE ARQUIVO QUE FOI IMPORTADO				$arquivo = fopen ($arquivo_temp,"r");								# ZERA A VARIÁVEL DE TOTAL DE COLUNAS DO ARQUIVO IMPORTADO				$colunas = 0;								# FAZ UM LOOP DAS LINHAS E DAS COLUNAS DO ARQUIVO				while ($coluna = fgetcsv ($arquivo, 1000, $_POST["rd_tipo"])) 				{					# CRIA A MATRIZ COM A LINHA E AS COLUNAS LINHA[0][0]  LINHA X COLUNA					array_push($linha,$coluna);				}								# FECHA O ARQUIVO				fclose ($arquivo);								# SABER O NÚMERO DE COLUNAS DO ARQUIVO IMPORTADO				$colunas = count($linha[0]);								# MOSTRA OS TRES PRIMEIROS RESULTADOS PARA SER USADO NO RELACIONAMENTO ARQUIVO X BANCO				for ($a=0;$a<$colunas;$a++)				{					for ($i=0;$i<3;$i++)					{					echo $linha["$i"]["$a"]."<br>";					}					echo "<br>";				}
e pro text area?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ué, as dicas ja forão dadas ...

tenta fazer nego, voce não fez o txt ... tb consegue fazer o do textarea ...

se voce ver os meus históricos de post, verá que raramente eu posto a solução ou o script ....

Faço isso não pq eu sou chato, mas pq eu não gosto ...

começa a fazer a parada ... não vejo dificuldade, sériao ... sem querer menosprezar é claro ...

VOCE tem capacidade para fazer, SEMPRE !!

 

---edit----

eu ja fiz :P

sua vez

Compartilhar este post


Link para o post
Compartilhar em outros sites

TAE AS 2 SOLUÇÕES...

 

$_SESSION["linha"] = array();						$linhas = explode("\n",$_POST["cnt_import"]);						$ContaColuna = count(explode($_POST["rd_tipo"],$linhas[0]));						for ($i=0;$i < count($linhas);$i++)			{					# CRIA A MATRIZ COM A LINHA E AS COLUNAS LINHA[0][0]  LINHA X COLUNA						array_push($_SESSION["linha"],explode($_POST["rd_tipo"],$linhas["$i"]));					if (count($_SESSION["linha"][count($_SESSION["linha"])-1]) != $ContaColuna)					{						$_SESSION["msg"] =  "colunas diferentes";					}			}						if (!(isset($_SESSION["msg"])))			{				for ($a=0;$a < count($_SESSION["linha"][0]);$a++)				{					for ($i=0;$i<3;$i++)					{					echo $_SESSION["linha"]["$i"]["$a"]."<br>";					}				}			}			else			{				header("Location:cnt_import_manual.php");				exit;			}

 

2 solução

 

$funcionarios = array("fabricio,fabricio@midiaweb.com.br,montador","minero, minero@midiaweb.com.br,programador");function converte(&$item, $prefix) {  $item = explode(",",$item);  $i = 0;  foreach($item as $campo => $valor) {	$novo["campo".$i] = $valor;	$i++;  }  $item = $novo;}array_walk($funcionarios, 'converte');$total = array();foreach($funcionarios as $item) {  $total = array_merge_recursive($total,$item);}print_r($total);

Compartilhar este post


Link para o post
Compartilhar em outros sites

dalhe garoto .. nao vi os dois códigos, mas sabia que voce conseguiria :D

eu fiz diferente ... fiz na pressa, joguei em um novo array

$textarea="fernando,19 anos, 21/02/1987,Varginha,MG<br/>fabiano,13 anos, 15/02/1993,Varginha,MG";foreach (explode("<br/>",$textarea) as $key => $value) $new[$key] = split(",",$value,strpos($value,","));

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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