Ir para conteúdo

Arquivado

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

Will Up

[Resolvido] Pegar extensão da imagem na hora do upload

Recommended Posts

Olá, fiz um sistema de upload de imagens (tá perfeito), mas preciso pegara a extensão da imagem que vai ser "upada", para depois fazer uma criptografia md5 no título.

 

Segue meu Script:

 

<?php 
include 'config.php';

if ( !isset($_SESSION["Username"]) ) {
header("location: loginform.php");
exit;
}

if(isset($_POST['upload'])){
 $pasta = 'images_files/';
 foreach($_FILES["img"]["error"] as $key => $error){

 if($error == UPLOAD_ERR_OK){
 $tmp_name = $_FILES["img"]["tmp_name"][$key];
 $cod = date('dmy') . '-' . $_FILES["img"]["name"][$key];
 $nome = $_FILES["img"]["name"][$key];
 $uploadfile = $pasta . basename($cod);
 $Tags = $_POST[Tags];


 if(move_uploaded_file($tmp_name, $uploadfile)){

 $inserir = mysql_query("INSERT INTO images (ImageID, Cid, Sid, Title, Tags, Image, Viewed, Published, TimeStamp, Username, Email_Address) VALUES ('', '', '', '', '$Tags', '$cod', '', 'Yes', '', '$_SESSION[Username]', '$_SESSION[Email_Address]')");

  header("location:myimages.php");
 
 } } } } ?>

Podem me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Extensão! E não NOME da imagem.

Pega o time MIME do arquivo.

 

echo $_FILES['img']['type'];

Compartilhar este post


Link para o post
Compartilhar em outros sites

Extensão! E não NOME da imagem.

Pega o time MIME do arquivo.

 

echo $_FILES['img']['type'];

leia o tópico com atenção. Eu disse que iria criptografar o título.

 

   $nome     = $_FILES['img']['name'];	
   $ext      = end(explode(".", $nome));

At+

 

Cara, deu isso: Warning: explode() expects parameter 2 to be string, array given in /home/theimage/public_html/multiplo.php on line 22

 

Warning: end() expects parameter 1 to be array, null given in /home/theimage/public_html/multiplo.php on line 22

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dee, a extensão faz parte do nome do arquivo. E ele deixou bem claro:

[...] mas preciso pegara a extensão da imagem que vai ser "upada", para depois fazer uma criptografia md5 no título.

 

crie uma linha

var_dump($_FILES['img']['name']);

 

E poste o resultado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dee, a extensão faz parte do nome do arquivo. E ele deixou bem claro:

[...] mas preciso pegara a extensão da imagem que vai ser "upada", para depois fazer uma criptografia md5 no título.

 

crie uma linha

var_dump($_FILES['img']['name']);

 

E poste o resultado

 

Deu isso:

 

array(1) { [0]=> string(8) "Will.png" }

Compartilhar este post


Link para o post
Compartilhar em outros sites

Que bom que resolveu, mas como não demonstrou a forma como fez, fica adida uma solução que percorre dezenas de tópicos no fórum:

 

function getExtension( $filename ) {
   return substr( $filename, strrpos( $filename, '.' ) + 1 );
}

var_dump( getExtension( 'arquivo.video.xvid.avi' ) ); // string(3) "avi"

Para esse caso, bastaria aplicar essa função sobre $_FILES['img']['name'], como o Evandro sugeriu.

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

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.