mauro_braga Postado Novembro 18, 2008 Denunciar Share Postado Novembro 18, 2008 Gostaria de verificar se o arquivo é do tipo csvpara isso tou e usando esse script mais não está dando resultado if(!eregi("^application\/(csv)$", $arquivo['type'])) $erro = "Arquivo deve ser no formato csv"; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Wanderson Camargo Postado Novembro 18, 2008 Denunciar Share Postado Novembro 18, 2008 Esta linha verifica o mime-type do arquivo. Provavelmente quando você cria este csv, você cria um mime-type text/plain.A função eregi utiliza expressões regulares para isto. Porém você pode verificar assim:if($arquivo['type']!="application/csv"&&$arquivo['type']!="text/plain") $erro = "Arquivo deve ser no formato csv";Porém assim você baixa a segurança quase insignificante que esta linha possui.Abraços. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 mauro_braga Postado Novembro 18, 2008 Autor Denunciar Share Postado Novembro 18, 2008 eu testei essa função só que ele ta dando erro mesmo quando o arquivo é csv Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Wanderson Camargo Postado Novembro 18, 2008 Denunciar Share Postado Novembro 18, 2008 Sorry, erro de lógica! =Pif($arquivo['type']!="application/csv"||$arquivo['type']!="text/plain") $erro = "Arquivo deve ser no formato csv"; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 mauro_braga Postado Novembro 18, 2008 Autor Denunciar Share Postado Novembro 18, 2008 Oi wanderson obrigado pela dica mais tou com um problema aquiVocê poderia me dar uma ajudaé o seguinte a função não tá funcionandoQuando mando mostrar na tela o type do arquivoecho $arquivo['type'];ele retornaCjá subi txt e csv e sempre da a mesma informação Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Wanderson Camargo Postado Novembro 18, 2008 Denunciar Share Postado Novembro 18, 2008 Só C ?Podes postar o código, onde ele recebe por POST o arquivo? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 mauro_braga Postado Novembro 18, 2008 Autor Denunciar Share Postado Novembro 18, 2008 oi Wanderson Camargonão consegui com aquela função acabei achando a solução abaixo //separa para verificar se o arquivo é txr $separa = explode(".", $_FILES['arquivo']['name']); if($separa[1] !="txt") { $erro = "Arquivo deve ser no formato txt"; echo "<font color='#FF0000'><span class='style1'>".$erro."</span></font>"; } muito obrigado pela ajuda Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Wanderson Camargo Postado Novembro 18, 2008 Denunciar Share Postado Novembro 18, 2008 @mauro_bragaTudo bom Mauro? Seguinte, claro boa dica, porém a questão da "segurança" fica falha pois, se eu inserir, digamos, uma foto bmp, onde eu mude a extensão, teu programa irá aceitar, entendes?Abraços e sucesso! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 mauro_braga Postado Novembro 19, 2008 Autor Denunciar Share Postado Novembro 19, 2008 Entendi Wandersonaqui segue o código onde ele recebe o arquivo $arquivo = $_FILES['arquivo']['tmp_name']; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Wanderson Camargo Postado Novembro 19, 2008 Denunciar Share Postado Novembro 19, 2008 Olá!Faça umprint_r($_FILES);Assim você poderá verificar o conteúdo do array. Provavelmente o mime-type está em$_FILES['arquivo']['type'];Dae você pode fazer um if com ele.Fonte: http://br.php.net/manual/en/features.file-upload.phpAbraços! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 mauro_braga Postado Novembro 19, 2008 Autor Denunciar Share Postado Novembro 19, 2008 Ta funcionando agoraObrigado pela ajuda Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
mauro_braga
Gostaria de verificar se o arquivo é do tipo csv
para isso tou e usando esse script mais não está dando resultado
if(!eregi("^application\/(csv)$", $arquivo['type']))
$erro = "Arquivo deve ser no formato csv";
Link para o comentário
Compartilhar em outros sites
10 respostass a esta questão
Posts Recomendados
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.