Jump to content
Fórum Script Brasil
  • 0

Txt


Guest - Filipi -

Question

Guest - Filipi -

Oi, tenho um codigo no qual qd digito algo ele grava em um txt, eu usei o a+, pra ele criar o txt casa ele não exista, mas queria q alem dele criar, tudo q eu escreve-se ele fosse adicionando acima e não abaixo, se eu usar o r+, ele não cria o txt, se alguém poder me ajudar vou ser muito grato... cool.gif

Link to comment
Share on other sites

9 answers to this question

Recommended Posts

  • 0

Se você quer a coisa pronta não vou passar, mas vou ficar feliz em te ajudar até que você entenda e consiga fazer... smile.gif

Vou te passar o link para algumas funções, dá uma lida nela e vê como elas funcionam. Depois, tente montar um script que só pega o conteúdo de um arquivo *.txt e mostra na tela, é bem simples... smile.gif

· http://br.php.net/function.file-get-contents

· http://br.php.net/function.file

· http://br.php.net/function.fopen

· http://br.php.net/function.fread

· http://br.php.net/function.fclose

Se não conseguir, posta aí o script que você fez e a gente mostra os erros, diz como é o melhor jeito e tal... smile.gif

Link to comment
Share on other sites

  • 0
Guest - Filipi -

Eu estava tentando com o comando if, mas já inverti as coisas já mudei e desmudei e o maximo que consigo é fazer funcionar um ou outro...

<?

$nome=$_POST['nome'];

$caixa =$_POST['caixa'];

$conteudo=$caixa;

$caminho = "../txt";

$txt = "../txt/$nome.txt";

if(!$txt)

{

$gravar = fopen("$caminho/$nome.txt", 'r+');

}

else

{

$gravar = fopen("$caminho/$nome.txt", 'a+');

}

flock($gravar, LOCK_EX);

if(!$gravar)

{

echo '<p><strong> Seu pedido não pode ser processado no momento.'

.'Por favor, volte depois.</strong></p>';

exit;

}

// fwrite($gravar, $conteudo);

fwrite($gravar, "<font color=#FF6600><b>Nome:</b></font> $nome<br>

<b><font color=#FF6600>Conteudo:</font></b> $conteudo<br>

<br><center><hr></center>");

flock($gravar, LOCK_UN);

fclose($gravar);

echo '<p>Pedido efetuado.</p>';

?>

Link to comment
Share on other sites

  • 0
Guest - Filipi -

Valeu pela dica de veficar se o arquivo existe, agora ele ta criando o arquivo se ele não existir, mas continua gravando em baixo, eu já inverti as bolas so que ai ele da um erro, se der vocês podem me falar porque ele não ta gravando em cima ainda..?

Mas já ta valendo so pela antenção que vocês estão dando...

<?

$nome=$_POST['nome'];

$caixa =$_POST['caixa'];

$conteudo=$caixa;

$caminho = "../txt";

$file = '$caminho/$nome.txt';

//TENTA gravar O ARQUIVO TXT

if (file_exists($file))

{

$gravar = fopen("$caminho/$nome.txt", 'r+');

}

else

{

$gravar = fopen("$caminho/$nome.txt", 'a+');

}

flock($gravar, LOCK_EX);

if(!$gravar)

{

echo '<p><strong> Seu pedido não pode ser processado no momento.'

.'Por favor, volte depois.</strong></p>';

exit;

}

rewind ($gravar);

//fwrite($gravar, $conteudo);

fwrite($gravar, "<font color=#FF6600><b>Nome:</b></font> $nome<br>

<b><font color=#FF6600>Conteudo:</font></b> $conteudo<br>

<br><center><hr></center>");

flock($gravar, LOCK_UN);

fclose($gravar);

echo '<p>Pedido efetuado.</p>';

?>

Link to comment
Share on other sites

  • 0

Isso aqui também não vai funcionar:

if(!$gravar)

Pra confirmar, faz um teste... antes desse if, coloca um:

echo "gravar: ".$gravar."<br>";

E tenta causar um erro de propósito... vai dar um erro de script e não vai nem chegar ali. smile.gif

Então esse if não tem utilidade nenhuma. Se você quiser fazer alguma coisa caso dê erro ao abrir o arquivo, faça assim:

$file_handler = @fopen("arquivo.txt","a+") or die("Não deu pra abrir o arquivo, não...");

Sendo que ali, o @ serve pra ocultar um possível erro que a função mostre e o die(*) é o que será executado caso aconteça um erro. Dentro do die você pode chamar outra função PHP, não tem problema nenhum...

Capisce? happy.gif

Link to comment
Share on other sites

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.2k
    • Total Posts
      652k
×
×
  • Create New...