Ir para conteúdo

Arquivado

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

tamires

tem algum problema com esse codigo?

Recommended Posts

ola...

esse codigo funcionava ate semanas atras (ao menos por uns 8 meses esse codigo funciono sem problemas...ai do dia pra noite, PUFFFFF)

 

 

vo postar o original (tirei do site da adobe) e o q to mexendo p ver se volta a funcionar. peguei dicas no curso do fabyo, em topicos no imasters, mas naaada. mt esquisito. pra mim ta certo...ja to quase vesga d tanto ler, comparar, fazer testes.

ps1: o resultaod da funcao GetCartId() esta vindo de uma include

ps2: ja testei a conexao c o banco, está ok,só não ta inserindo isso dai. ja testei com e sem @, colocando e tirando a query de uma variavel, mas nada.

 

codigo mexido

<? function AddItem($itemId, $qty){		global $dbServer, $dbUser, $dbPass, $dbName;$cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);		$result = mysql_query("select * from ss_carr where cookieId = '" . GetCartId() . "' and itemId = $itemId");$row = mysql_fetch_row($result);$numRows = $row[0];if($numRows == 0){			// This item doesn't exist in the users ss_carr,			// we will add it with an insert query@mysql_query("INSERT INTO ss_carr VALUES (NULL, '" . GetCartId() . "', $itemId, $qty)");//coloquei para testar apenas, esta retornando "bahh" sempre if(mysql_affected_rows() == 1){echo "Registro efetuado com sucesso<br />";} else {echo "bahh";}		}		else		{			// This item already exists in the users ss_carr,			// we will update it instead						UpdateItem($itemId, $qty);		}	}?>

original (adobe)

function AddItem($itemId, $qty)	{		// Will check whether or not this item		// already exists in the cart table.		// If it does, the UpdateItem function		// will be called instead				global $dbServer, $dbUser, $dbPass, $dbName;		// Get a connection to the database		$cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);				// Check if this item already exists in the users cart table		$result = mysql_query("select count(*) from cart where cookieId = '" . GetCartId() . "' and itemId = $itemId");		$row = mysql_fetch_row($result);		$numRows = $row[0];				if($numRows == 0)		{			// This item doesn't exist in the users cart,			// we will add it with an insert query			@mysql_query("insert into cart(cookieId, itemId, qty) values('" . GetCartId() . "', $itemId, $qty)");		}		else		{			// This item already exists in the users cart,			// we will update it instead						UpdateItem($itemId, $qty);		}	}

aguardo respostas

grata

tamires

Compartilhar este post


Link para o post
Compartilhar em outros sites

O código original, da Adobe, esta funcionando?Houve alguma atualização por parte do servidor (no php, no banco, no apache)?O programa retorna algum erro?Tentou imprimir os inserts para confirmar se estão corretos?Tentar entender isso, pois pelo que vi (meio rapido hehe) esta tudo ok mesmo.AbraçosFelipe

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim, o codigo original esta funcionando. baixei d novo p ver se tinha algo diferente, mas nao mudou nada.ate aonde sei nao houve mudancas na locaweb (em relacao a php, banco e apache)....pq nem no local funciona, e no local nao mudei nada.nao retorna erro algum, simplesmente nao acontece nada. isso eh parte d um carrinho, você clica p adicionar os produtos, e o carrinho continua vazio.como assim imprimir os inserts? você diz dar um echo?tentei imprimir os itens q ele insere no carrinho, ta td ok.n consigo entender aonde tem problema nisso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

OiBem em que versao esta rodando o PHP? Se a versao estiver acima de 5 o a solu;ao mais provalvel vem abaixo, caso contrario: :(As tags deveriam ser assim "<?php ?>" e NAO ASSIM "<? ?>"Se for isso da um toque!Vlw:)

Compartilhar este post


Link para o post
Compartilhar em outros sites

tente colocar uma aspa simples nas variaveis tbm e acrescente: or die ("select sscarr: ". mysql_error()) que vai te mostrar se tem algum problema nas querys select e insert.

 

$result = mysql_query("select * from ss_carr where cookieId = '" . GetCartId() . "' and itemId = '$itemId'") or die ("select ss_carr: ". mysql_error());@mysql_query("INSERT INTO ss_carr VALUES (NULL, '" . GetCartId() . "', '$itemId', '$qty')") or die ("insert sscarr: ". mysql_error());
Geralmente esses erros esta na forma de concatenar ou algum objeto de abertura e fechmento no código.

 

Desculpa não conheco esta forma de obter o resultado

mysql_affected_rows(?????), ou você esta errado ou realmente não conheco.

Compartilhar este post


Link para o post
Compartilhar em outros sites

1- dei echo, esta tudo ok.2- não é a conexão por que ele acha o banco certinho, só não insere nada nele. de qualquer forma verifiquei, está tudo certo.3- a versão é maior que a cinco sim. mas não é o problema das tags pq deixei <? ?> so pra postar aqui, na pagina esta <?php ?>4- o affected rows, peguei no curso de php do fabyo, mas nao estava usando antes, coloquei pra testar...retorna quantas linhas no banco foram afetadas, pelo que entendi.5- coloquei as aspas e o "or die", e cheguei na solucao!! ele disse q tinha uma entrada duplicada no banco...ai descobri q nao sei por que diabos um campo estava no banco como "unico", e nao deveria estar....pois eh, esqueci do die e me ferrei!! perdi mo tempao...tao simples!! meu, valeu mt pela ajuda galera.....obrigada =o)!!abs

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.