Ir para conteúdo
Fórum Script Brasil
  • 0

Criar Variavel Dinâmica


Khufu

Pergunta

Oi pessoal !

Tenho que gerar um txt a partir de um script em PHP, sendo que eu carrego varias variaveis, porém essas variaveis tem o mesmo nome + um numero($item1,$item2,$item3,...) e é aqui que eu to me embananando. Se eu executo o script mas nem todas as variaveis estão preenchidas ela gera o TXT e deixa uma linha em branco na variavel que esta em branco. Como eu faço pra quando gerar o TXT disconsiderar as variaveis que estão em branco. O BIOC me falou para usar o "fwrite()", mas eu tentei usar e o TXT aparece em branco. Sou meio bizonho em PHP por isso peço ajuda a vocês.

Script :

<?

$fp = fopen("arquivo.txt", "a");

fputs ($fp, "$nome;$email;$fone.\r\n$item1\r\n$item2\r\n$item3\r\n");

fclose($fp);

?>

Supondo que apenas o cabeçalho e o item1 foi preenchido o TXT fica assim :

--------------------------------

Nome;Email;Fone

item1

Nome;Email;Fone

item1

---------------------------------

Quero que ele fique assim :

--------------------------------

Nome;Email;Fone

item1

Nome;Email;Fone

item1

---------------------------------

Agradeço desde já a atenção !

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

É isso mesmo !

O usuario tem um formulário onde preenche nome;email;fone e os itens que ele quer. Ele pode tanto preencher todos os itens(total de 20) como pode preencher apenas um. E é esse meu enrrosco o TXT não pode vir com as linhas em branco dos itens que ele NÃO escolheu. Tem que vir apenas as variaveis com conteudo, não pode ficar espaço entre os registros.

Ta gerando assim:

--------------------------------

Nome;Email;Fone

item1

Nome;Email;Fone

item1

---------------------------------

Preciso que ele gere assim :

--------------------------------

Nome;Email;Fone

item1

Nome;Email;Fone

item1

---------------------------------

Agradeço a atenção !

Link para o comentário
Compartilhar em outros sites

  • 0

Oi 404 !

Eu tentei usar o "for " mas ta dando erro :

<?

$fp = fopen("arquivo.txt", "a");

for($i=1;$i<=20;$i++){

$item=item&$i;

}

fputs ($fp, "$nome;$email;$fone.\r\n$item\r\n");

fclose($fp);

?>

Não tá funcionado. Onde eu estou errando !

Grato pela atenção !

Link para o comentário
Compartilhar em outros sites

  • 0

Oi M@luco !

Fiz com você falo. Mas não funcionou, no TXT ficou assim:

noem;email;fone.

&20

Ai eu tentei fazer assim :

for($i=1;$i<=20;$i++){

$item="$item&$i";

}

Ai o TXT ficou assim:

noem;email;fone.

&1&2&3...até 20

acho que o caminho é por aqui, como eu faço pra usar a condicional que o 404 falou "if(!empty($item#))" ?

grato pela atenção !

Link para o comentário
Compartilhar em outros sites

  • 0

Esse & que você tá usando é uma tentativa de concatenar ou você quer que o "&" apareça mesmo???

Porque concatenação em php é com o "." [ponto]

E nesse pequeno pedaço do script que você postou não tem a parte que ele grava no banco de dados... seria nessa parte que você usaria a condicional... cool.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Oi 404 !

É eu tava tentando concatenar. Na verdade não é em um DB que estou tentando armazenar e sim em um TXT. Segue abaixo o script completo já com o "for" :

<?

$fp = fopen("pedido.txt", "a");

for($i=1;$i<=20;$i++){

$n="$item.$i";

}

fputs ($fp, " $nome;$email;$fone\r\n$n\r\n");

fclose($fp);

?>

Do jeito que está o TXT fica assim:

nome;email;fone

.20

Só ta retornando o valor maximo de "$i", onde eu coloco a condicional "if(!empty($item#))"

Grato pela atenção

Link para o comentário
Compartilhar em outros sites

  • 0

Então... a concatenação ainda tá meio errada...hehehe... é que quando você coloca as coisas entre aspas duplas: "", não precisa usar a concatenação...o problema é que as vezes a gente não pode usar as aspas, principalmente quando quer uma função no meio de uma string...então a gente concatena...

O seu código deveria ficar:

$n = "$item$i"; ou $n = $item.$i;...

Antes de tratar a condicional, você tem que levar em conta da onde estão vindo essas variáveis $itemN... São checkboxes, texts, radios?

Isso é importante...

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...