Ir para conteúdo

POWERED BY:

Arquivado

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

fabiossmn

[Resolvido] Dificuldade com script (mysql_num_rows)

Recommended Posts

olá pessoal, estou tendo dificuldades para estar criando um código que parece ser relativamente "simples".

É mais ou menos assim:

tenho os produtos cadastrados no banco de dados e cada um tem um campo que se refere a Status do produto, que quero mudá-los de Normal para Destaque, pois quando está em "Destaque", ele mostra um destes produtos na pagina inicial do Site, só que eu queria estar fazendo uma validação na hora de dar um Update no produto para que não tenha dois registros com o Status "Destaque", para nao aparecer dois produtos na pagina inicial.

o codigo que estava fazendo seria mais ou menos assim:

include("../includes/config.php");
$IDPort = $_GET['id'];
$SelBancoPort = mysql_query("SELECT * FROM cestas WHERE IDCesta = '$IDPort'");
$Destaque = mysql_query("SELECT * FROM cestas WHERE StatusCesta = 'Destaque'");
$conta = mysql_num_rows($Destaque) >= 1;
while($array = mysql_fetch_array($SelBancoPort)){
	$id = $array['IDCesta'];
	$StatusCesta = $array['StatusCesta'];
if($IDPort == $id){
	if($SelBancoPort){		
		$Cadastrar = mysql_query("UPDATE cestas SET StatusCesta = 'Normal' WHERE IDCesta = '$IDPort'");
		if($Cadastrar){
			echo("<script language='javaScript'>window.location.href='../ger_produtos.php?acao=att&ex=jatem'</script>");
		}else{
			echo("<script language='javaScript'>window.location.href='../ger_produtos.php?acao=att&ex=erro'</script>");
		}
	}else{
		echo("<script language='javaScript'>window.location.href='../ger_produtos.php?acao=att&ex=erro'</script>");
	}	

}
}//fecha while

 

estou no caminho certo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

não tem sentido o que tentou fazer... mas devdo ao esforço em querer fazer te mostrei um caminho simples e prático

 

vamos começar pela lógica de progrmação que também é muito simples

 

O seu modelo de negócios diz

 

"só pode haver um marcado como "destaque" (highlighted)"

 

na prática:

 

 

UPDATE cesta SET StatusCesta = 'Normal' WHERE StatusCesta = 'Destaque';

Isso faz com que o registro marcado como Destaque seja removido do Destaque

 

Em seguida, faça o UPDATE para o novo detaque

 

UPDATE cesta SET StatusCesta = 'Destaque' WHERE IDCesta = '$IDPort';

só isso...

 

nã tem necessidade de usar select, fazer loop no resourceid, etc...

 

--------

 

Resolvido!!!

Vlw hinom biggrin.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.