Eduneri 0 Denunciar post Postado Maio 17, 2007 Olá pessoal, tudo bem?Estou com o seguinte problema:- Tenho um formulário onde o usuário o preenche com seus dados, e seleciona um arquivo, beleza... após enviado o formulário, o arquivo que recebe os dados, envia um email, para uma conta "x", e junto com essa função, tem a opção de copiar o arquivo da máquina do usuário para internet, que está no código a seguir... No meu CPU, funciona na boa, porém qdo jogo na NET, dá esse erro: Warning: copy(artigos/1234.pdf) [function.copy]: failed to open stream: Permission denied in /bkp/vhost/www.posgraduacao.net/data/site_falm/enviar_artigo.php on line 112O código que está esse erro, está dessa forma:if($arquivo_tp <> ''){ // tipo if(($arquivo_tp <> 'application/pdf')){ // verifica o tipo echo "Tipo de arquivo inválido.<br>"; echo $arquivo_tp; echo "<meta http-equiv='refresh' content='2; URL=javascript:history.go(-1);'>"; }else{ $arquivo1 = "artigos/$cpf"; if(file_exists($arquivo1)){ echo "O nome do arquivo já existe, por favor renomeie o arquivo."; echo "<meta http-equiv='refresh' content='2; URL=javascript:history.go(-1);'>"; }//existencia do nome } // verifica o tipo }// tipo if($nome and $email){ if($arquivo){ copy($arquivo,"artigos/$cpf.pdf"); }else{ echo "Erro na Inclusão, tente mais tarde!"; }É isso aí intaum galera, agradeço a atenção!Abraços! Compartilhar este post Link para o post Compartilhar em outros sites
Otata 4 Denunciar post Postado Maio 18, 2007 entãoi cara erro de acesso ao arquivo usa a função:chmod($arquivo,0777) Compartilhar este post Link para o post Compartilhar em outros sites
Eduneri 0 Denunciar post Postado Maio 18, 2007 Intaum, mas uso essa função?Na hora de copiar o arquivo?Vlw pela ajuda! Compartilhar este post Link para o post Compartilhar em outros sites
Otata 4 Denunciar post Postado Maio 18, 2007 então isso mesmo...depois que você faz o copy(..)..Abraço! Compartilhar este post Link para o post Compartilhar em outros sites
Eduneri 0 Denunciar post Postado Maio 18, 2007 E aí beleza?Intaum fiz o q você falou, coloquei depois do comando copy, porém está dando o seguinte erro: Warning: copy(artigos/03546677935.pdf) [function.copy]: failed to open stream: Permission denied in /bkp/vhost/www.posgraduacao.net/data/site_falm/enviar_artigo.php on line 112Agradeço pela ajuda! Compartilhar este post Link para o post Compartilhar em outros sites
David Ramires 1 Denunciar post Postado Maio 18, 2007 Tenta colocar a permissão direto na pasta!! Compartilhar este post Link para o post Compartilhar em outros sites
Eduneri 0 Denunciar post Postado Maio 18, 2007 Olá Ramires, beleza? Mas como posso fazer isso? O código de cópia fico assim: if($arquivo){ copy($arquivo,"artigos/$cpf.pdf"); chmod($arquivo,0777);}else{ echo "Erro na Inclusão, tente mais tarde!";} Vlw! Compartilhar este post Link para o post Compartilhar em outros sites
Eduneri 0 Denunciar post Postado Maio 18, 2007 Alguém? Compartilhar este post Link para o post Compartilhar em outros sites
Otata 4 Denunciar post Postado Maio 18, 2007 if($arquivo){ copy($arquivo,"artigos/$cpf.pdf"); chmod("artigos/$cpf.pdf",0777);}else{ echo "Erro na Inclusão, tente mais tarde!";}não no tmp... Compartilhar este post Link para o post Compartilhar em outros sites
Eduneri 0 Denunciar post Postado Maio 18, 2007 Cara, fiz assim agora, mas mesmo assim, tá dando erro... porém outro tipo: Couldn't connect as xxxClosed connection to xxx.xx.xx.x if($arquivo){ $ftpUserName = 'xxx'; $ftpUserPass = 'xxxxxxx'; $ftpServer = 'xxx.xx.xx.x'; $ftpConn = ftp_connect($ftpServer); if (!$ftpConn) { die("Unable to connect to $ftpServer"); } if (@ftp_login($conn_id, $ftpUserName, $ftpUserPass)) { echo "Connected as $ftpUserName @ $ftpServer"; }else{ echo "Couldn't connect as $ftpUserName<br>"; ftp_close($ftpConn); die("Closed connection to $ftpServer"); } echo ftp_chmod($ftpConn, 0666, $ftpFilename) ? "CHMOD successful!" : 'Error'; copy($arquivo,"artigos/$cpf.pdf"); chmod("artigos/$cpf.pdf",0777); echo ftp_chmod($ftpConn, 0644, $ftpFilename) ? "CHMOD successful!" : 'Error'; ftp_close($conn_id); }else{ echo "Erro na Inclusão, tente mais tarde!"; }O que pode ser isso?Obrigado pela ajuda! Compartilhar este post Link para o post Compartilhar em outros sites
Eduneri 0 Denunciar post Postado Maio 21, 2007 Existe a possibilidade da função copy no PHP estar desativada no servidor, onde está hospedado?Abraços! Compartilhar este post Link para o post Compartilhar em outros sites
David Ramires 1 Denunciar post Postado Maio 21, 2007 acho que tem sim, procura saber, veja com suporte onde você está hopedando... ah, dá uma conferida.. Crie um phpinfo.php phpinfo(); procura por --disable-ftp ou --enable-ftp se tiver abilitado enable. quer dizer que tem suporte ao recurso FTP no php... então você usa algum programa de FTP para enviar seus arquivos ? tente fazer o seguinte, clica com o botão direito na pasta onde serão enviados os arquivos, e procure por attributes(CHMOD) ou algo sobre permissão... Compartilhar este post Link para o post Compartilhar em outros sites
Eduneri 0 Denunciar post Postado Maio 21, 2007 Fiz, tudo o q você falou...encontrei essas linhas: '--enable-ftp'FTP support enabledFiz o detalhe do programa de FTP... e encontrei as opções de chmod:Owner => Read - Write - ExecuteGroup => Read - Write - ExecuteOther => Read - Write - ExecuteDaí, deixei marcado todas as opções... creio q só precisava o write.. mas como não funcionou....Intaum, depois de tudo isso... ainda não funcionou...Meu code está assim:if($arquivo){ $destino = "/artigos"; $nome_arquivo = "$cpf.pdf"; move_uploaded_file($arquivo,$destino."/".$nome_arquivo); chmod("artigos/$cpf.pdf",0777);}else{ echo "Erro na Inclusão, tente mais tarde!";}]VLW pela ajuda! Compartilhar este post Link para o post Compartilhar em outros sites
Eduneri 0 Denunciar post Postado Maio 22, 2007 Alguém poderia me ajudar?Abraços! Compartilhar este post Link para o post Compartilhar em outros sites