Bom dia pessoal do fórum..
Seguinte, estou usando as funções 'fopen()' e 'fwrite()' para gerar um arquivo texto.
Em partes está dando certo. Com o arquivo texto já criado, e em branco, eu rodo a função, ela abre o arquivo, e escreve.
Até ai beleza, ela escreveu certinho os dados no arquivo.
Mas depois, se eu rodo uma segunda vez, ele escreve os dados também, porém, escreve na linha de baixo dos dados antigos.
Entenderam? A cada vez que eu rodo, ele inclui novas linhas pra baixo, mas o que eu quero, é que ele limpe os dados anteriores, e substitua pelos novos. Tem como?
Agradeço desde já! Valeu!

Função "fopen()"
Started By screenshotx, 17/10/2007, 09:08
6 replies to this topic
#1
Posted 17/10/2007, 09:08
Iniciante em PHP/MySQL.
"Ter problemas na vida é inevitável, mas ser derrotado por eles é opcional."
"Ter problemas na vida é inevitável, mas ser derrotado por eles é opcional."
#2
Posted 17/10/2007, 09:14
#3
Posted 17/10/2007, 09:18
Então, ja tentei usando o w+
Mas não deu certo...
Esses dados que eu estou escrevendo, são vários registros de uma tabela. Quando eu coloco o w+ ele escreve no arquivo somente o primeiro registro da tabela, somente uma linha, porque isso?
Vlw!
Mas não deu certo...
Esses dados que eu estou escrevendo, são vários registros de uma tabela. Quando eu coloco o w+ ele escreve no arquivo somente o primeiro registro da tabela, somente uma linha, porque isso?
Vlw!
Iniciante em PHP/MySQL.
"Ter problemas na vida é inevitável, mas ser derrotado por eles é opcional."
"Ter problemas na vida é inevitável, mas ser derrotado por eles é opcional."
#4
Posted 17/10/2007, 09:18
Cadê o código?
Até mais
#5
Posted 17/10/2007, 09:20
Taí:
UPDATE: Obs: Isso está dentro de um WHILE!
$filename = 'relat_os.txt'; $somecontent = "$cod_coord_txt;$dt_solic_txt;$dt_prev_txt;$row[horas_orcadas];\n"; if (is_writable($filename)) { if (!$handle = fopen($filename, 'w+')) { print "Erro abrindo arquivo ($filename)"; exit; } // Escrevendo $somecontent para o arquivo aberto. if (!fwrite($handle, $somecontent)) { print "Erro escrevendo no arquivo ($filename)"; exit; } print "Sucesso: escrito ($somecontent) no arquivo ($filename)"; fclose($handle); } else { print "The file $filename is not writable"; }
UPDATE: Obs: Isso está dentro de um WHILE!
Edição feita por: screenshotx, 17/10/2007, 09:24.
Iniciante em PHP/MySQL.
"Ter problemas na vida é inevitável, mas ser derrotado por eles é opcional."
"Ter problemas na vida é inevitável, mas ser derrotado por eles é opcional."
#6
Posted 17/10/2007, 09:29
Ok, se está dentro de um while e toda vez você abre o arquivo, trunca e escreve o dado corrente da tabela, naturalmente só escreve uma vez. 
Até mais

Até mais
#7
Posted 17/10/2007, 09:42
É... realmente.. bobiei rs..
Deu certo, tirei o fopen() do while..
Muito obrigado!
Deu certo, tirei o fopen() do while..
Muito obrigado!
Iniciante em PHP/MySQL.
"Ter problemas na vida é inevitável, mas ser derrotado por eles é opcional."
"Ter problemas na vida é inevitável, mas ser derrotado por eles é opcional."
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)