Jump to content


Pegar Ultimas 3 Letrar


  • Faça o login para participar
8 replies to this topic

#1 Visitante - ricardo

Visitante - ricardo
  • Visitantes

Posted 02/09/2003, 16:31

seguinte galera

fiz um script de upload aki bem simples, porém para não precisar duplicar o sistema preciso saber como pegar o tipo do arquivo(no meu caso WAV ou MP3)

simplificando, quero q ele exiba a frase ARQUIVO MP3 enviado com sucesso quando for MP3 e Arquivo WAV enviado com sucesso quando for arquivo wav, claro, daria pra fazer com if mas quero algo bem simples e sabendo a função que retorna o tipo do arquivo já simplifica tudo!

[]'s

#2 ffmm

ffmm

    Veterano

  • Usuários
  • 1224 posts
  • Sexo:Não informado

Posted 02/09/2003, 18:26

Vc pode fazer assim :

<?
$arquivo = "arquivo.mp3";
echo substr($arquivo, -3);
?>

Nesse exemplo, $arquivo é o nome do arquivo (completo, com a extensão), e ele vai mostrar a extensão do arquivo. Se vc quiser que mostre o nome da extensão em maiusculo, vc pode fazer assim :

<?
$arquivo = "arquivo.mp3";
echo strtoupper(substr($arquivo, -3));
?>

O comando strtoupper deixa todas as letras em maiusculas. O comando substr retorna o pedaço da string q começa no numero especificado no segundo argumento (no caso -3). Se esse numero for normal (positivo), sem sinal, ele começa a string do começo, se for negativo, começa a string do final do arquivo.
Aki vc pode ver + sobre :
substr:
http://www.superphp....at=95&func=2184
strtoupper:
http://www.superphp....at=95&func=2177

#3 Visitante - ricardo

Visitante - ricardo
  • Visitantes

Posted 03/09/2003, 16:43

opa

tpw, mas ele ta pegando e jogando para todos o TMP.

tinha feito de outro modo e continuava desta forma, aí pensei que estava fazendo errado, mas enfim...

o q fazer para ele não ler como arquivo temporário ???

#4 Jonas Felipe

Jonas Felipe

    Programador PHP :D

  • Usuários
  • 520 posts
  • Sexo:Não informado
  • Localidade:Aqui em ksa
  • Interesses:nenhum =]

Posted 03/09/2003, 17:19

tenta issu...
$_FILES['arquivo']['type'];
$_FILES['arquivo']['size'];
$_FILES['arquivo']['tmp_name'];
$_FILES['arquivo']['error'];
$_FILES['arquivo']['name'];

dai no seu caso use...
$_FILES['campo']['type'];

assim vc recebe ele em escrito dae pode usar um substr... t+
sem cabeça pra assinatura agora :P

#5 Visitante - ricardo

Visitante - ricardo
  • Visitantes

Posted 03/09/2003, 21:36

blz!

curti, porém ele ta colocando o nome do arquivo inteiro, tpw MP3 eh audio/mpeg, arquivo ZIP eh application/x-zip-compressed ... ja da pra deixar assim mas se tiver como identificar MP3 e wav melhor...

#6 Visitante - ricardo

Visitante - ricardo
  • Visitantes

Posted 03/09/2003, 21:39

eu usei um setich para modificar o nome, tpw
switch ($file) {
case"application/x-zip-compressed":
$file = "ZIP";
break;
}

claro q só irá funcionar nos tipos que eu fizer o teste e jogar o valor, mas ja é a solução pra mim, valeu! se allgúem souber pegar o tipo de outra forma, pegando direto os 3 ultimos textos me fala... flws

#7 Balala

Balala

    What you want for yourself?

  • Ex-Admins
  • 3357 posts
  • Sexo:Não informado
  • Localidade:Jaraguá do Sul - SC
  • Interesses:http://forum.wmonline.com.br/index.php?showtopic=5792

Posted 03/09/2003, 21:40

por exemplo, seu campo no form para enviar o arkivo eh "arquivo", então vc deve estar fazendo assim:

<?
echo substr($arquivo_type, -3);
?>


eh isso? basta alterar o type para o nome do arquivo, naum o tipo, ficando assim:

<?
echo substr($arquivo_name, -3);
?>


flw
Balala - Admin Geral Webfórum - Retired
Twitter
Stop Spreading Lies!
Posted Image

#8 Jonas Felipe

Jonas Felipe

    Programador PHP :D

  • Usuários
  • 520 posts
  • Sexo:Não informado
  • Localidade:Aqui em ksa
  • Interesses:nenhum =]

Posted 04/09/2003, 02:41

vc pode usar o switch ou substr... fika a seu criterio axo interessante essa forma pois o kra pode manda files sem extensão... q ele identifika... ou seja vc pode limitar seu formulario a tipos q vc ker...
sem cabeça pra assinatura agora :P

#9 lol

lol

    LOL

  • Usuários
  • 109 posts
  • Sexo:Não informado

Posted 04/09/2003, 12:16

Vc pode usar expressão regular. Vai um exemplo abaixo.

Para qualquer extensão.

if ( ereg( '\.([^.]+)$', $_FILES['arquivo']['name'], $regs) )
{
  $Extensao = $reg[1];
}
else
{
  print "Arquivo sem extensão.....";
  exit;
}


Para somente WAV ou MP3.

if ( eregi( '\.(wav|mp3)$', $_FILES['arquivo']['name'], $regs) )
{
  $Extensao = $reg[1];
}
else
{
  print "A extensão não é WAV ou MP3.....";
  exit;
}

Não testei. Se der algum erros posta aqui que dou uma olhada.




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq