Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal,
Estava lendo a coluna do JUlio e me deparei com um problema , olha só!
A materia sobre os TXTs;
Olha o eu fiz:
Tenho um arquivo flash com um campo de EMAIlS_NEWS:
Ele envio por POST esses dados para o arquivo enviar_news.php
No enviar_news.php
<?//pega as variaveis por POST $email = $_POST["email_news"]; global $email; //função para validar a variável $email no script todo //Prepara o conteudo para ser gravado$conteudo = $email; //arquivo TXT$txt = 'http://www.bandasanmarino.com.br/emails.txt'; // Tenta abrir o arquivoif(!$abrir = fopen($txt,"a")){exit;} //escreve no arquivo if(!fwrite($abrir,$conteudo)){exit;}//fecha o arquivofclose($abrir);?>Nome do meu TXT: emails.txt
Mensagem que dá no explorer na hora de executar o arquivo!
Warning: fopen(http://www.bandasanmarino.com.br/emails.txt)::) failed to open stream: HTTP wrapper does not support writeable connections. in /dados/www/www.bandasanmarino.com.br/public_html/enviar_news.php on line 17
OBS: se eu colocar “r”(ler) ao invés de “a” ele funciona,mas não grava.
O que eu errei?
Muito obrigado
Abraço
Gustavo :unsure:
Como ficaria o script?Não sou muito conhecedor de Lixux com o PHP!Obrigado
O seu servidor está rodando na internet é ? Ou é localhost? Se for server da internet, você terá de ir no ftp e dar os chmod....
Ou se não tiver a opção no seu cliente de ftp (muito improvável) tenta ai:
DANDO CHMOD POR ARQUIVOS PHP.
Não consigo entender como fazer isso?Devo por o zero antes do valor?
<?phpchmod ("/arquivo/diretorio", 0777); ?> a linha de comando esta no proprio site do php.net
Ok , fiz isso ai em cima e deu uma mensagem " Warning: chmod(): Operation not permitted in /dados/www/www.bandasanmarino.com.br/public_html/enviar_news.php on line 3Warning: fopen(emails.txt): failed to open stream: Permission denied in /dados/www/www.bandasanmarino.com.br/public_html/enviar_news.php on line 21 "
POsta o codigo todo agora
OBS: se eu colocar "r"(ler) ao invés de "a" ele funciona,mas não grava.
Claro "r" é somente para leitura
'r' Abre somente leitura; coloca o ponteiro do arquico no começo do arquivo.
'r+' Abre para leitura e escrita; coloca o ponteiro do arquivo no começo do arquivo.
'w' Abre para escrita somente; coloca o ponteiro do arquivo no começo do arquivo e diminui (trunca) o tamanho do arquivo para zero. Se o arquivo não existe, tenta criá-lo.
'w+' Abre o arquivo para leitura e escrita; coloca o ponteiro do arquivo no começo e diminui (trunca) o tamanho do arquivo para zero. Se o arquivo não existe, tenta criá-lo.
'a' Abre para escrita somente; coloca o ponteiro do arquivo no final. Se o arquivo não existe, tenta criá-lo.
'a+' Abre o arquivo para leitura e escrita; coloca o ponteiro do arquivo no final. Se o arquivo não existe, tenta criá-lo.
TA AI O CODIGO PHP COMPLETO!!!
<?chmod ("emails.txt", 0777);//pega as variaveis por POST$email = $_POST["email_news"];global $email; //função para validar a variável $email no script todo //Prepara o conteudo para ser gravado$conteudo = $email;//arquivo TXT$txt = 'emails.txt';// Tenta abrir o arquivoif(!$abrir = fopen($txt,"a")){echo "fudeu!";exit;}//escreve no arquivoif(!fwrite($abrir,$conteudo)){echo 'fudeu 2';exit;}//fecha o arquivofclose($abrir);?>
oBRIGADO PELA ATENÇÃO DE VOCÊS PESSOAL!
ABRAÇO
você está usando um servidor linux ou windows??sendo linux você deve dar chmod 0777 pra poder gravar!Acho que seja isso!