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

Sistema simples de inclusão de dados, em .TXT (Alguém pode me ajudar?)


Gabriel M. Biff

Pergunta

Antes de mais nada, vou dizer aonde eu quero aplicar esse sistema, http://gabrielmbiff.com/galeria/004/

Como já devem ter percebido sou fotógrafo, www.gabrielmbiff.com é meu site, e no site existe a página de galeria, http://www.gabrielmbiff.com/galeria/

Na galeria, alguns albuns são fixos, outros não, por exemplo, natureza, aonde cada nova foto que eu faço, eu adiciono lá.

Oque eu quero é bem simples, criar um formulário, com um unico campo, escrito link, e o espaço do lado para preencher com o link da imagem que eu quero adicionar.

Eu queria que esse formulário inserisse o link aqui:

<a href="http://gabrielmbiff.com/imagens/galeria/006/1.jpg">

<img title="Batizado Miguel"

alt=""

src="$LINKAQUI">

</a>

Pensei em fazer isso usando as funções fopen() fwrite(), porém eu não sei, muito menos criar a página com o formulário para enviar o link.

Ele teria que começar a adicionar do começo do arquivo txt, quero no caso eu usaria como uma include na propria galeria.

Não sei se conseguem me entender, está frio aqui, minha mãe esta congelando e não consigo escrever muito bem.

Mas enfim, eu só quero um código pronto, pode ser usado, eu posso fazer as adaptaçoes, que tenha um formulário, e nesse fomulario um "textarea" para inserir o link de uma imagen, .JPG, dai esse link é inserido dentro do código que eu mostrei acima, no lugar de $LINKAQUI

E só...

Por favor, me ajudem.

Abraços.

Link para o comentário
Compartilhar em outros sites

17 respostass a esta questão

Posts Recomendados

  • 0

Bom dia cara, fiz uma coisa bem simples aqui pra você testar e quem sabe começar a mudar da melhor forma pra lhe atender.

formulario

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>
    </head>
    <body>
        <form action="grava_txt.php" method="post">
            <fieldset>
                <legend>Grava link</legend>
                Link completo: 
                <input type="text" name="link"/>
                <input type="submit" value="gravar link"/>
            </fieldset>
        </form>
    </body>
</html>
grava_txt.php
<?php
//caminho completo do txt a ser gravado
$caminho_txt = "/home/www/ajuda/link.txt";

//pega valor da input
$link = $_POST['link'];

//controla para que o formulario não seja submetido varias vezes seguidas
if ($link == NULL) {
    echo "Você deve digitar um link para ser gravado ! <br/>";
    echo "<input type=\"button\" value=\"voltar\" onclick=\"history.back(-1);\"/> ";
} else {
    //caso o txt não esteja criado, cria o txt e grava
    $abre_txt = fopen($caminho_txt, 'a');

    fwrite($abre_txt, $link . "\n");

    fclose($abre_txt);

    echo "Link gravado com sucesso <br/>";
    echo "<input type=\"button\" value=\"voltar\" onclick=\"history.back(-1);\"/> ";
}
?>
e por fim o arquivo gerado fica assim: link.txt
http://static.php.net/www.php.net/images/php.gif
http://scriptbrasil.com.br/forum/style_images/sb_images/logo4.jpg
http://scriptbrasil.com.br/forum/membro.gif
http://scriptbrasil.com.br/forum/style_images/sb_images/bf_new.gif

Pelo que entendi e isso que você precisava

T+

Link para o comentário
Compartilhar em outros sites

  • 0
Bom dia cara, fiz uma coisa bem simples aqui pra você testar e quem sabe começar a mudar da melhor forma pra lhe atender.

formulario

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>
    </head>
    <body>
        <form action="grava_txt.php" method="post">
            <fieldset>
                <legend>Grava link</legend>
                Link completo: 
                <input type="text" name="link"/>
                <input type="submit" value="gravar link"/>
            </fieldset>
        </form>
    </body>
</html>
grava_txt.php
<?php
//caminho completo do txt a ser gravado
$caminho_txt = "/home/www/ajuda/link.txt";

//pega valor da input
$link = $_POST['link'];

//controla para que o formulario não seja submetido varias vezes seguidas
if ($link == NULL) {
    echo "Você deve digitar um link para ser gravado ! <br/>";
    echo "<input type=\"button\" value=\"voltar\" onclick=\"history.back(-1);\"/> ";
} else {
    //caso o txt não esteja criado, cria o txt e grava
    $abre_txt = fopen($caminho_txt, 'a');

    fwrite($abre_txt, $link . "\n");

    fclose($abre_txt);

    echo "Link gravado com sucesso <br/>";
    echo "<input type=\"button\" value=\"voltar\" onclick=\"history.back(-1);\"/> ";
}
?>
e por fim o arquivo gerado fica assim: link.txt
http://static.php.net/www.php.net/images/php.gif
http://scriptbrasil.com.br/forum/style_images/sb_images/logo4.jpg
http://scriptbrasil.com.br/forum/membro.gif
http://scriptbrasil.com.br/forum/style_images/sb_images/bf_new.gif

Pelo que entendi e isso que você precisava

T+

dinohills, porém ali no link.txt, ele tem que gerar assim:

<a href="http://gabrielmbiff.com/imagens/galeria/006/1.jpg">

<img title="Batizado Miguel"

alt=""

src="http://static.php.net/www.php.net/images/php.gif">

</a>

<a href="http://gabrielmbiff.com/imagens/galeria/006/1.jpg">

<img title="Batizado Miguel"

alt=""

src="http://scriptbrasil.com.br/forum/style_images/sb_images/logo4.jpg

">

...

E não só o link... entende?

</a>

Link para o comentário
Compartilhar em outros sites

  • 0
Bom dia cara, fiz uma coisa bem simples aqui pra você testar e quem sabe começar a mudar da melhor forma pra lhe atender.

formulario

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>
    </head>
    <body>
        <form action="grava_txt.php" method="post">
            <fieldset>
                <legend>Grava link</legend>
                Link completo: 
                <input type="text" name="link"/>
                <input type="submit" value="gravar link"/>
            </fieldset>
        </form>
    </body>
</html>
grava_txt.php
<?php
//caminho completo do txt a ser gravado
$caminho_txt = "/home/www/ajuda/link.txt";

//pega valor da input
$link = $_POST['link'];

//controla para que o formulario não seja submetido varias vezes seguidas
if ($link == NULL) {
    echo "Você deve digitar um link para ser gravado ! <br/>";
    echo "<input type=\"button\" value=\"voltar\" onclick=\"history.back(-1);\"/> ";
} else {
    //caso o txt não esteja criado, cria o txt e grava
    $abre_txt = fopen($caminho_txt, 'a');

    fwrite($abre_txt, $link . "\n");

    fclose($abre_txt);

    echo "Link gravado com sucesso <br/>";
    echo "<input type=\"button\" value=\"voltar\" onclick=\"history.back(-1);\"/> ";
}
?>
e por fim o arquivo gerado fica assim: link.txt
http://static.php.net/www.php.net/images/php.gif
http://scriptbrasil.com.br/forum/style_images/sb_images/logo4.jpg
http://scriptbrasil.com.br/forum/membro.gif
http://scriptbrasil.com.br/forum/style_images/sb_images/bf_new.gif

Pelo que entendi e isso que você precisava

T+

Eu fiz como você mandou, só pra testar, e deu esse erro:

PHP Error Message

Warning: fopen(/link.txt) [function.fopen]: failed to open stream: Permission denied in /home/a4876745/public_html/testes/grava_txt.php on line 14

Free Web Hosting

PHP Error Message

Warning: fwrite(): supplied argument is not a valid stream resource in /home/a4876745/public_html/testes/grava_txt.php on line 16

Free Web Hosting

PHP Error Message

Warning: fclose(): supplied argument is not a valid stream resource in /home/a4876745/public_html/testes/grava_txt.php on line 18

Free Web Hosting

Link gravado com sucesso

__________

Apesar de no final aparecer que o link foi gravado, nenhuma modificação ocorreu no arquivo .txt.

Lembrando que esse "sistema" esta na pasta /testes do diretório public html.

Esse src="" vai ser igual ao link da foto ? Ou você vai informar ele toda vez ?

Eu vou informar todas as vezes, porque são imagens diferentes.

Link para o comentário
Compartilhar em outros sites

  • 0

Como o jissa disse, deve ser permissão ou talvez o caminho que não está certo.

Aqui estão os arquivos modificados.

formulario

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>
    </head>
    <body>
        <form action="grava_txt.php" method="post">
            <fieldset>
                <legend>Grava link</legend>
                Título:
                <input type="text" name="titulo"/><br/>
                Source:
                <input type="text" name="source"/><br/>
                Link foto: 
                <input type="text" name="link"/><br/>                
                <input type="submit" value="gravar link"/>
            </fieldset>
        </form>
    </body>
</html>
grava_txt.php
<?php
//caminho completo do txt a ser gravado
$caminho_txt = "/home/www/ajuda/link.txt";

//pega valor da input
$link = $_POST['link'];
$titulo = $_POST['titulo'];
$source = $_POST['source'];

$grava_txt = "<a href=\"$link\">
<img title=\"$titulo\"
alt=\"\"
src=\"$source\">
</a>    
";

//controla para que o formulario não seja submetido varias vezes seguidas
if ($link == NULL) {
    echo "Você deve digitar um link para ser gravado ! <br/>";
    echo "<input type=\"button\" value=\"voltar\" onclick=\"history.back(-1);\"/> ";
} else {
    //caso o txt não esteja criado, cria o txt e grava
    $abre_txt = fopen($caminho_txt, 'a');

    fwrite($abre_txt, $grava_txt . "\n");

    fclose($abre_txt);

    echo "Link gravado com sucesso <br/>";
    echo "<input type=\"button\" value=\"voltar\" onclick=\"history.back(-1);\"/> ";
}
?>

Link para o comentário
Compartilhar em outros sites

  • 0
Como o jissa disse, deve ser permissão ou talvez o caminho que não está certo.

Aqui estão os arquivos modificados.

formulario

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>
    </head>
    <body>
        <form action="grava_txt.php" method="post">
            <fieldset>
                <legend>Grava link</legend>
                Título:
                <input type="text" name="titulo"/><br/>
                Source:
                <input type="text" name="source"/><br/>
                Link foto: 
                <input type="text" name="link"/><br/>                
                <input type="submit" value="gravar link"/>
            </fieldset>
        </form>
    </body>
</html>
grava_txt.php
<?php
//caminho completo do txt a ser gravado
$caminho_txt = "/home/www/ajuda/link.txt";

//pega valor da input
$link = $_POST['link'];
$titulo = $_POST['titulo'];
$source = $_POST['source'];

$grava_txt = "<a href=\"$link\">
<img title=\"$titulo\"
alt=\"\"
src=\"$source\">
</a>    
";

//controla para que o formulario não seja submetido varias vezes seguidas
if ($link == NULL) {
    echo "Você deve digitar um link para ser gravado ! <br/>";
    echo "<input type=\"button\" value=\"voltar\" onclick=\"history.back(-1);\"/> ";
} else {
    //caso o txt não esteja criado, cria o txt e grava
    $abre_txt = fopen($caminho_txt, 'a');

    fwrite($abre_txt, $grava_txt . "\n");

    fclose($abre_txt);

    echo "Link gravado com sucesso <br/>";
    echo "<input type=\"button\" value=\"voltar\" onclick=\"history.back(-1);\"/> ";
}
?>

Erro:

Warning: fopen(/home/www/ajuda/link.txt) [function.fopen]: failed to open stream: No such file or directory in /home/a4876745/public_html/testes/grava_txt.php on line 23

Free Web Hosting

PHP Error Message

Warning: fwrite(): supplied argument is not a valid stream resource in /home/a4876745/public_html/testes/grava_txt.php on line 25

Free Web Hosting

PHP Error Message

Warning: fclose(): supplied argument is not a valid stream resource in /home/a4876745/public_html/testes/grava_txt.php on line 27

Link para o comentário
Compartilhar em outros sites

  • 0
deve ser permissão de escrita no arquivo .txt

777? Eu dei. Dai quando eu vou acessar o arquivo, diz que não existe.

Desconfio que tenha alguma coisa errada nessa parte, $caminho_txt = "/home/www/ajuda/link.txt";

/

A variavel $caminho_txt precisa ser absoluta, não se pode usar como URL.

tente fazer um

chown apache:apache

isso na pasta aonde o txt vai ser gerado.

cara você não pode usa o caminho do txt igual ao meu. Você precisa modificar esse caminho para funcionar no seu servidor.

Essa e a unica coisa que você precisa modificar.

Link para o comentário
Compartilhar em outros sites

  • 0
deve ser permissão de escrita no arquivo .txt

777? Eu dei. Dai quando eu vou acessar o arquivo, diz que não existe.

Desconfio que tenha alguma coisa errada nessa parte, $caminho_txt = "/home/www/ajuda/link.txt";

/

A variavel $caminho_txt precisa ser absoluta, não se pode usar como URL.

tente fazer um

chown apache:apache
isso na pasta aonde o txt vai ser gerado. cara você não pode usa o caminho do txt igual ao meu. Você precisa modificar esse caminho para funcionar no seu servidor. Essa e a unica coisa que você precisa modificar.
Ai, não entendi :/ $caminho_txt = "/home/www/ajuda/link.txt"; Porque esse caminho? Se o arquivo .txt está na pasta "testes", que esta na pasta /public_html da raíz do ftp.
deve ser permissão de escrita no arquivo .txt
777? Eu dei. Dai quando eu vou acessar o arquivo, diz que não existe. Desconfio que tenha alguma coisa errada nessa parte, $caminho_txt = "/home/www/ajuda/link.txt"; /
A variavel $caminho_txt precisa ser absoluta, não se pode usar como URL. tente fazer um
chown apache:apache

isso na pasta aonde o txt vai ser gerado.

cara você não pode usa o caminho do txt igual ao meu. Você precisa modificar esse caminho para funcionar no seu servidor.

Essa e a unica coisa que você precisa modificar.

Ok, agora que eu já expliquei onde esta o .txt, como vai ficar o caminho?

Link para o comentário
Compartilhar em outros sites

  • 0
Pelo jeito seu caminho correto é

/home/a4876745/public_html/testes/

então fica assim a variavel

$caminho_txt = "/home/a4876745/public_html/testes/link.txt";
Aleluia, deu! :D
Pelo jeito seu caminho correto é /home/a4876745/public_html/testes/ então fica assim a variavel
$caminho_txt = "/home/a4876745/public_html/testes/link.txt";

Só por curiosidade, porque não abre? http://www.gabrielmbiff.com/testes/link.txt

Quando eu vou abrir pelo FTP, abre.

Link para o comentário
Compartilhar em outros sites

  • 0

E tem mais uma coisinha, se souberem me auxiliar.

Aqui nessa galeria por exemplo, http://gabrielmbiff.com/galeria/004/, como tem muitas fotos, a página fica mais pesada pra carregar.

Vocês vão perceber que vão aparecer umas mensagens de "timeout exceeded" e "undefined", oque ao meu ver, parece aparecer porque algum arquivo determina um tempo máximo para o carregamento de cada imagem, como são várias imagens carregando junto, esse tempo não é suficiente, e aparecem essas mensagens de erro.

Tem como ocultá-las ou aumentar esse tempo?

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...