Ir para conteúdo
Fórum Script Brasil
  • 0

peço ajuda com esse upload


naldo_10

Pergunta

este sistema de upload grava o nome da image no banco mas não ta gravando a extensão

tipo :

a image é ventoinha.png
no banco fica assim:
ventoinha.
http://s1353.photobucket.com/albums/q669/t...zpsdf405fc4.jpg olha o codigo abaixo: essa é a função
/*****************************
IMAGE UPLOAD
*****************************/
   function uploadImage($img, $tmp, $thumb, $nome, $width, $pasta){
       $ext = substr($nome,-3);
       
       switch($ext){
         
           case "jpg" : $img = imagecreatefromjpeg($tmp); break;
           case "jpeg": $img = imagecreatefromjpeg($tmp); break;
           case "png" : $img = imagecreatefrompng($tmp); break;
           case "gif" : $img = imagecreatefromgif($tmp); break;
           
           }
          $x = imagesx($img);
          $y = imagesy($img);
          $height = ($width * $y) / $x;
         $nova   = imagecreatetruecolor($width, $height);
          
          imagealphablending($nova,false);
          imagesavealpha($nova,true);
          imagecopyresampled($nova, $img, 0, 0, 0, 0, $width, $height, $x, $y);
          
          switch ($ext){
           case "jpg" : imagejpeg($nova, $pasta.$nome,100); break;
           case "jpeg": imagejpeg($nova, $pasta.$nome,100); break;
           case "png" : imagepng($nova, $pasta.$nome); break;
           case "gif" : imagegif($nova, $pasta.$nome); break;
          }
          imagedestroy($img);
          imagedestroy($nova);
       }
?>
esse é o codigo parte que faz upload
$pasta = '../uploads/';
          $ano   = date('Y');
          $mes   = date('m');
          if(!file_exists($pasta.$ano)){
               mkdir($pasta.$ano,0755);
              }
          
            if(!file_exists($pasta.$ano.'/'.$mes)){
               mkdir($pasta.$ano.'/'.$mes,0755);
              }
           $img = $_FILES['thumb'];
           $ext = substr($img['name'],-3);
           $f['thumb'] = $ano.'/'.$mes.'/'.$f['url'].'.'.$ext;
           uploadImage($img['tmp_name'], $f['url'].'.'.$ext, '960',$pasta.$ano.'/'.$mes.'/');
        
           create('up_posts',$f);
          
          if($f['status'] == '1'){
     echo '<span class="ms ok">artigo cadastrado, voce pode visualizar!</span>';
     echo '<a href="'.BASE.'/artigo/'.$f['url'].'" target=" _blank" title=ver artigo">aqui</a></span>';       
          }else{
         echo '<span class="ms in">artigo registrado com suscesso .para ativar é preciso ir em editar artigos e clicar ativar!</span>';
         
          }
        }
  }
?>

Editado por naldo_10
Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0
Mostre a parte em que é feita a query que grava os dados no banco.

olha o codigo inteiro abaixo :

<?php
if (!function_exists('getUser')):
    header('Location: ../index2.php');
endif;
?>
<?php if (getUser($_SESSION['autUser']['id'], '1') ): ?>
<div class="bloco form" style="display:block">
<div class="titulo">criar posts:
<a href="index2.php?exe=posts/posts" title="criar nova categoria" class="btn" style="float:right;">listar artigos</a>
</div>
   <?php 
     
  if(isset($_POST['sendForm'])){
      $f['titulo']   = htmlspecialchars(mysql_real_escape_string($_POST['titulo']));
      $f['tags']     = htmlspecialchars(mysql_real_escape_string($_POST['tags']));
      $f['content']  = mysql_real_escape_string($_POST['content']);
      $f['date'] = htmlspecialchars(mysql_real_escape_string($_POST['data']));
      $f['categoria']  = htmlspecialchars(mysql_real_escape_string($_POST['categoria']));
       $f['cat_pai']  = getCat($f['categoria'], 'id_pai');
      $f['nivel'] = htmlspecialchars(mysql_real_escape_string($_POST['nivel']));
      $f['status']  =($_POST['sendForm'] == 'salvar' ? '0': '1');
      $f['autor']   =  $_SESSION['autUser']['id'];
      $f['tipo']  = 'post';

 if(in_array('',$f)){
     
     echo '<span class="ms in">para uma boa alimentação requer todos campos!</span>';
 }else{
     $f['data'] = formDate($f['date']);  unset($f['date']);
      $f['url'] = setUri($f['titulo']); 
      $readPostUri = read('up_posts',"WHERE url LIKE '%$f[url]%'"); 
      if($readPostUri){
          $f['url'] =  $f['url'].'-'.count($readPostUri);
          $readPostUri = read('up_posts',"WHERE url = '$f[url]'"); 
          if($readPostUri){
             $f['url'] = $f['url'].'_'.time();
            }
          }
          
          $pasta = '../uploads/';
          $ano   = date('Y');
          $mes   = date('m');
          if(!file_exists($pasta.$ano)){
               mkdir($pasta.$ano,0755);
              }
          
          if(!file_exists($pasta.$ano.'/'.$mes)){
               mkdir($pasta.$ano.'/'.$mes,0755);
              }
           $img = $_FILES['thumb'];
           $ext = strtolower(end(explode('.', $img['name'])));
           $f['thumb'] = $ano.'/'.$mes.'/'.$f['url'].'.'.$ext;
           uploadImage($img['tmp_name'], $f['url'].'.'.$ext, '960', $pasta.$ano.'/'.$mes.'/');
        
           create('up_posts',$f);
          
          if($f['status'] == '1'){
     echo '<span class="ms ok">artigo cadastrado, voce pode visualizar!</span>';
     echo '<a href="'.BASE.'/artigo/'.$f['url'].'" target=" _blank" title=ver artigo">aqui</a></span>';       
          }else{
         echo '<span class="ms in">artigo registrado com suscesso .para ativar é preciso ir em editar artigos e clicar ativar!</span>';
         
          }
        }
  }
?>
              
<form name="formulario" action="" method="post">

<label class="line">
<span class="data">foto:</span>
<input type="file" name="thumb" class="fileinput" size="60" style="cursor:pointer; background:#fff" />
</label>

<label class="line">
<span class="data">titulo:</span>
<input type="text" name="titulo" value="<?php echo isset( $f['titulo'] ) ? $f['titulo'] : ""; ?>" />
</label>

<label class="line">
<span class="data">Tags:</span>
<input type="text" name="tags" value="<?php echo isset( $f['tags'] ) ? $f['tags'] : ""; ?>" />
</label>

<label class="line">
<span class="data">conteudo</span>
<textarea name="content" class="editor" rows"6"><?php echo isset( $f['content'] ) ? $f['content'] : ""; ?></textarea>
</label>

<label class="line">
<span class="data">data</span>
<input type="text" name="data" class="formDate" value="<?php echo isset( $f['data'] ) ? $f['data'] : ""; ?><?php date("d-m-Y H:i:s")?>" />
</label>



<label class="line">
<select name="categoria">
<option value="">selecione uma categoria &nbsp; &nbsp;</option>
 <?php
  $readCategoriaPai = read('up_cat',"WHERE id_pai IS NULL");
       if(!$readCategoriaPai){
           echo '<option value="">não encontramos </option>';  
}else{
 foreach($readCategoriaPai as $pai):
 echo '<option value="" disabled="disabled">'.$pai['nome'].'</option>'; 
    $readCategorias = read('up_cat',"WHERE id_pai = '$pai[id]'");
    
      if(!$readCategorias){
          echo '<option value="" disabled="disabled">&raquo;&raquo; cadastre uma subcategoria</option>'; 
}else{
    foreach($readCategorias as $cat):
      echo '<option value="'.$cat['id'].'" ';
      if($cat['id'] == isset($f['categoria'])){
          echo 'selected="selected"';
      }
      echo'>&raquo;&raquo; '.$cat['nome'].'</option>';  
      endforeach;
     }
  endforeach;
   }
?>

</select>
</label>


<div class="check">
<span class="data">permissão do artigo:</span>
<ul>
<li><label><input type="radio" value="0" name="nivel"
<?php if(isset($f['nivel']) || $f['nivel'] == '0') echo 'checked="checked"';?>/> Valor</label>
</li>
<li><label><input type="radio" value="4" name="nivel" 
<?php if(isset($f['nivel']) && $f['nivel'] == '4') echo 'checked="checked"';?>/> Leitor</label></li>

<li class="last"><label><input type="radio" value="3" name="nivel"
<?php if(isset($f['nivel']) && $f['nivel'] == '3') echo 'checked="checked"';?> /> Premium</label></li>
</ul>

</div>

<input type="submit" value="salvar" name="sendForm" class="btn" />
<input type="submit" value="salvar e publicar" name="sendForm" class="btn" />
</form>                 

        </div><!-- /bloco form -->
</div><!-- /bloco list -->
                
 <?php 
/**
 * Ele não tem permissão 
 */
else:
        echo '<span class="ms al">Desculpe,voce não tem permissão para gerenciar paginas!</span>';
endif;
?>   
       
</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0
Vê se existe algum substr, substr_replace ou str_replace, qualquer função que possa está retirando o jpg. Faz um teste também, insere uma imagem png ou gif pra vê qual é o comportamento.

só na função

IMAGE UPLOAD

*****************************/

function uploadImage($tmp, $nome, $width, $pasta){

$ext = substr($nome,-3);

switch($ext){

case "jpg" : $img = imagecreatefromjpeg($tmp); break;

case "jpeg": $img = imagecreatefromjpeg($tmp); break;

case "png" : $img = imagecreatefrompng($tmp); break;

case "gif" : $img = imagecreatefromgif($tmp); break;

}

$x = imagesx($img);

$y = imagesy($img);

$height = ($width * $y) / $x;

$nova = imagecreatetruecolor($width, $height);

imagealphablending($nova,false);

imagesavealpha($nova,true);

imagecopyresampled($nova, $img, 0, 0, 0, 0, $width, $height, $x, $y);

switch ($ext){

case "jpg" : imagejpeg($nova, $pasta.$nome, 100); break;

case "jpeg": imagejpeg($nova, $pasta.$nome, 100); break;

case "png" : imagepng($nova, $pasta.$nome); break;

case "gif" : imagegif($nova, $pasta.$nome); break;

}

imagedestroy($img);

imagedestroy($nova);

}

?>

Link para o comentário
Compartilhar em outros sites

  • 0
Vê se existe algum substr, substr_replace ou str_replace, qualquer função que possa está retirando o jpg. Faz um teste também, insere uma imagem png ou gif pra vê qual é o comportamento.

só na função

IMAGE UPLOAD

*****************************/

function uploadImage($tmp, $nome, $width, $pasta){

$ext = substr($nome,-3);

switch($ext){

case "jpg" : $img = imagecreatefromjpeg($tmp); break;

case "jpeg": $img = imagecreatefromjpeg($tmp); break;

case "png" : $img = imagecreatefrompng($tmp); break;

case "gif" : $img = imagecreatefromgif($tmp); break;

}

$x = imagesx($img);

$y = imagesy($img);

$height = ($width * $y) / $x;

$nova = imagecreatetruecolor($width, $height);

imagealphablending($nova,false);

imagesavealpha($nova,true);

imagecopyresampled($nova, $img, 0, 0, 0, 0, $width, $height, $x, $y);

switch ($ext){

case "jpg" : imagejpeg($nova, $pasta.$nome, 100); break;

case "jpeg": imagejpeg($nova, $pasta.$nome, 100); break;

case "png" : imagepng($nova, $pasta.$nome); break;

case "gif" : imagegif($nova, $pasta.$nome); break;

}

imagedestroy($img);

imagedestroy($nova);

}

?>

olha o erro:

tava assim

<form name="formulario" action="" method="post">
sendo que certo nesse form que faz upload é assim:
<form name="formulario" action="" method="post" enctype="multipart/form-data">

muito obrigado por ajudar amigo

Editado por naldo_10
Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...