Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Bobrinha

Renomear arquivo e fazer upload com o novo nome

Recommended Posts

Olá pessoal, estou aqui finalizando um script de upload de MP3 porém alguns arquivos mp3 não faz upload devido ao seus nomes com caracteres especias etc... ai da erro.

 

Gostaria de saber como implantar no script abaixo uma função para renomear o arquivo antes de fazer o upload e depois q renovar realizar o upload e gravar no DB

 

o script esta correto e funciona corretamente, falta so adaptar

 

ou então uma função para retirar caracteres especiais etc do nome da musica

 

<?php
include "conexao.php";

	$musica = $_POST['musica'];
	$cantor = $_POST['cantor'];
	$data = date ("Y-m-d H:i:s");
	#Declaramos de onde estaremos recebendo o anexo (que será através da variável ($_FILES) de envio de arquivos por HTTP)
	$DfAnexo = $_FILES["DfAnexo"]["name"];

	#Se nenhum arquivo for selecionado para ser enviado, exibe a mensagem de erro abaixo
	if(empty($DfAnexo) || empty($musica) || empty ($cantor)) {
		echo "Erro:<br /><br />";
		echo "Todos os campos devem ser preenchidos";
	}
	#Caso contrário, o arquivo é checado para ser processado
	else {
		#Declaramos um tamanho máximo para o envio do anexo em bytes (setamos como sendo 5120000 bytes (que é igual a 5 MB))
		#Se o anexo for maior que 5 MB, exibe a mensagem de erro abaixo e termina a execução do script
		if($_FILES["DfAnexo"]["size"] > 5120000) {
			echo "Erro no envio do anexo<br /><br />";
			echo "Seu anexo não poderá ser maior que 5 MB!";
			exit;
		}
		#Caso contrário, o arquivo continua a ser processado
		if(!empty($_FILES["DfAnexo"]["tmp_name"]) and is_file($_FILES["DfAnexo"]["tmp_name"])) {
			#Declaramos a pasta aonde o arquivo será salvo (esta pasta deve estar com chmod 777)
			$caminho = "uploads/";

			#Declaramos a data e hora atual que será inserida no nome do arquivo para registrar o exato momento do envio dele
			$datahora = date("Ymd_His_");

			#Re-declaramos a pasta aonde o arquivo será salvo, desta vez inserindo junto a ela o nome do arquivo
			$caminho = $caminho.$datahora.$_FILES["DfAnexo"]["name"];

			#Declaramos os tipos de extensões aceitas para o envio do anexo
			//if(eregi(".mp3$", $_FILES["DfAnexo"]["name"]) or eregi(".zip$", $_FILES["DfAnexo"]["name"])) {
			if(eregi(".mp3$", $_FILES["DfAnexo"]["name"])) {
				#Copiamos o arquivo para a pasta setada mais acima
				copy($_FILES["DfAnexo"]["tmp_name"],$caminho);
				
				
                print '<h1>'.$caminho.'</h1>';

                $insere = mysql_query ("INSERT INTO mp3 (musica,cantor,download,cliques,data) VALUES('$musica','$cantor','$caminho','0','$data') ")or die(mysql_error());

				//echo "<br /><br />";
				//echo "MP3 Cadastrado com sucesso...";
				echo $insere;
			}
			#Se o anexo não tiver uma extensão aceita, exibe a mensagem de erro abaixo e termina a execução do script
			else {
				echo "Erro no envio do anexo<br /><br />";
				echo "Extensão inválida de arquivo!";
				exit;
			}
		}
		#Se o anexo tiver sido indicado através de um caminho inválido ou tenha um nome inválido, exibe a mensagem de erro abaixo e termina a execução do script
		else {
			echo "Erro no envio do anexo<br /><br />";
			echo "Caminho e/ou nome de anexo inválido!";
			exit;
		}
	}
//}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.