Ir para conteúdo

Arquivado

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

Wesley Kovalski

Problema com UPDATE

Recommended Posts

Só funciona o update se tiver apenas um banner, se tiver mais que um, ai se atualizar o link ou a imagem, o update está atualizando todos os banner.

 

Mas eu quero que atualize apenas aquele que for editar. Tentei usar o WHERE mas mesmo assim não está funcionando. Sou leigo ainda em php, desculpa ae galera!

 

O código está logo abaixo:

 

//---------------------------------------------------------------------------------------

<?
if(isset($_POST['edit'])){

$thumb_meta = $_POST['nome_banner_editar'];

$link = $_POST['link'];

if($_FILES['thumb']['size'] > 0){

$erro = $config = array();



$arquivo = isset($_FILES["thumb"]) ? $_FILES["thumb"] : FALSE;

$sql_select = mysql_query("SELECT thumb FROM banner")
		      or die('Erro ao selecionar a tabela!');
while($linha = mysql_fetch_array($sql_select)){

	$thumb_select = $linha['0'];

} // fehando while

if($arquivo != ''){

	@unlink("../uploads/banner/$thumb_select");

} // fechando if $arquivo

//-------------------------------------------------------------------upload-----------------------------------------------




$config["tamanho"] = 10006883;//verifica o tamanho (peso)
$config["largura"] = 605; // verifica a largura
$config["altura"]  = 246; // e a altura



if($arquivo)
{  

   if(preg_match("/image(pjpeg|jpeg|gif|png)$/", $arquivo["type"])) 
   {
       echo "<script type='text/javascript' language='javascript'>
			alert ('Formato inválido!');
			window.location.href='editar_banner.php';
		  </script>";
		exit();
   }
   else
   {
       if($arquivo["size"] > $config["tamanho"])//
       {
          echo "<script type='text/javascript' language='javascript'>
				alert ('Arquivo de tamanho muito grande!');
				window.location.href='editar_banner.php';
      		</script>";
		exit();
       }

       $tamanhos = getimagesize($arquivo["tmp_name"]);

       if($tamanhos[0] < $config["largura"])
       {
           echo "<script type='text/javascript' language='javascript'>
				alert ('Arquivo de largura muito pequeno!');
				window.location.href='editar_banner.php';
      		  </script>";
		exit();
       }

       if($tamanhos[1] < $config["altura"])// 
       {
           echo "<script type='text/javascript' language='javascript'>
				alert ('Arquivo de altura muito pequena!');
				window.location.href='editar_banner.php';
      		  </script>";
		exit();
       }
   }

   if(sizeof($erro)){
	}else{

		preg_match("/\.(gif|bmp|png|jpg|jpeg|png){1}$/i", $arquivo["name"], $ext);

		$imagem_capa = md5(uniqid(time())) . "." . $ext[1];
		$imagem_dir = "../uploads/banner/" . $imagem_capa;
		move_uploaded_file($arquivo["tmp_name"], $imagem_dir);

	}
}

//-----------------------------------------------------FIM UPLOAD----------------------------------------------------------------	
$upload = mysql_query("UPDATE banner SET thumb = '$imagem_capa', link = '$link'")
	  or die('Erro ao atualizar conteúdo!');
}else{

$upload = mysql_query("UPDATE banner SET link = '$link'")
	  or die('Erro ao atualizar conteúdo!');

} // fechando if $_FILES

if($upload != ''){
echo "<div class=\"ok\">Atualizado com sucesso!</div>";
}

} // fechando isset
?>

<?
// Laço para aparecer os valores do banco nos input
?>      
<?
$editar_banner_thumb = $_POST['nome_banner_editar'];

$editar_banner = mysql_query("SELECT thumb, link FROM banner WHERE thumb = '$editar_banner_thumb'")
			 or die('Erro ao selecionar a tabela!');


while($res_editar_banner = mysql_fetch_array($editar_banner)){

	$thumb_editar_banner = $res_editar_banner[0];
	$link_editar_banner = $res_editar_banner[1];

?>



       <form name="editar_banner" method="post" action="" enctype="multipart/form-data">

       <fieldset>
       	<legend>Formulário de Cadastro</legend>

           <label>
           	<span>Imagem do Produto (605 X 246) - Somente necessário</span>
               <input type="file" name="thumb" />
           </label>           

           <label>
           	<span>Link da pagina</span>
               <input type="text" name="link" value="<? echo"$link_editar_banner"; ?>" />
           </label>

           <input type="hidden" name="nome_banner_editar" value="<? $thumb_editar_banner ?>"/>
           <input type="submit" value="editar" name="edit" class="cadastro_btn" />

       </fieldset>        
       </form>

<?
} // fechando while
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se você não usar WHERE na SQL com certeza você vai acabar modificando todos os registros.

 

Aconselho a você usar um campo ID, do tipo INTEGER como chave primária em suas tabelas, e com esse ID você consegue facilmente atualizar um determinado registro.

 

Sugiro procurar um tutorial/vídeo aula de CRUD em PHP para você entender.

 

Até mais.

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.