Ir para conteúdo

POWERED BY:

Arquivado

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

gremio10

[Resolvido] Problema em pegar unico registro Ajax

Recommended Posts

Fala galera, uso PHP e jQuery, para fazer uma listagem e para poder dizer se foi usado ou não tal produto, só que o problema é..

Quando clico em não usado, a mensagem de sucesso vai para todos, ou seja, eu não consigo fazer ele ir para o registro ao qual ele clicou..

 

<?php foreach($all as $reg){ ?>
		<div class="offerRemember">
			<div class="validade">
			<h2>Válido até: <?php echo $func->getDateTime($reg->finalized) ?></h2>
			</div>
			<div class="offerLembrete">
				<img src="<?php echo $Sql->root ?>upload/promotion/<?php echo $reg->file_upload ?>" width="100" height="90" />
				<h2>
				<?php echo $reg->offer ?>
				</h2>

			<div class="btn">
				<form class="utilizei">
					<input type="hidden" value="<?php echo $reg->used_id ?>" name="id" />
					<input type="hidden" value="<?php echo $id ?>" name="user_id" />
					<input type="hidden" value="<?php echo $reg->offer_id ?>" name="offer_id" />
					<input type="hidden" value="<?php echo $reg->partner_id ?>" name="partner_id" />
					<input type="hidden" value="1" name="used_user" />
					<input type="hidden" value="0" name="used_partner" />
					<input type="submit" value=" " border="0" class="jaUtilizei"/>
				</form>
				<form class="nao">
					<input type="hidden" value="<?php echo $reg->used_id ?>" name="id" />
					<input type="hidden" value="<?php echo $id ?>" name="user_id" />
					<input type="hidden" value="<?php echo $reg->offer_id ?>" name="offer_id" />
					<input type="hidden" value="<?php echo $reg->partner_id ?>" name="partner_id" />
					<input type="hidden" value="0" name="used_user" />
					<input type="hidden" value="0" name="used_partner" />
					<input type="submit" value=" " border="0" class="aindaNao"/>
				</form>
				<div class="btn2"></div>
			</div>

		</div>
	</div>
   <?php } ?>

 

e meu jQuery

 

<script type="text/javascript">
	$(document).ready(function(){

		$(".jaUtilizei").click(function(){

			$("#autostart").hide();

			var form 	 = $(this).parent(".utilizei");
			var params	 = form.serialize();
			var remember = $("#offerRemember");
			var loading	 = $("#loading");
			var btn  	 = $(".btn");
			var btn2  	 = btn.find(".btn2");

			$.ajax({
				type: "POST",
				data: params,
				url: "used_user.php",
				beforeSend: function(){
					loading.html("<img src='<?php echo $Sql->root ?>imgs/ajax-loader.gif'>");
				},
				success: function(){
					loading.html("");
					btn.css("display","none");
					btn2.css("display","block");
					btn2.html("Enviado com sucesso!");
				},
				error: function(e){
					loading.html(e);
				}
			});				
			return false;
		});

		$(".aindaNao").click(function(){

			var form 	 = $(this).parent(".nao");
			var params	 = form.serialize();
			var remember = $(".offerRemember");
			var loading	 = $("#loading");
			var btn  	 = $(".btn");
			var btn2  	 = btn.find(".btn2");

			$.ajax({
				type: "POST",
				data: params,
				url: "used_user.php",
				beforeSend: function(){
					loading.html("<img src='<?php echo $Sql->root ?>imgs/ajax-loader.gif'>");
				},
				success: function(){
					loading.html("");

					btn2.html("Enviado com sucesso!");
				},
				error: function(e){
					loading.html(e);
				}
			});				
			return false;
		});
	});		
</script>

 

Precisava de uma luz urgente... Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

navegue melhor no dom.

 

use o .parent() para descobrir em qual formulario você está, e então jogue só nele oque você precisa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

¬¬

 

 var btn          = $(".btn");

troca por:

 

 var btn          = $( this ).parents('.btn');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui Resolver, obrigado pela ajuda William...

 

apenas criei uma div que abrange a btn

 

<div class="tst">
			<div class="btn">
				<form class="utilizei">
					<input type="hidden" value="<?php echo $reg->used_id ?>" name="id" />
					<input type="hidden" value="<?php echo $id ?>" name="user_id" />
					<input type="hidden" value="<?php echo $reg->offer_id ?>" name="offer_id" />
					<input type="hidden" value="<?php echo $reg->partner_id ?>" name="partner_id" />
					<input type="hidden" value="1" name="used_user" />
					<input type="hidden" value="0" name="used_partner" />
					<input type="submit" value=" " border="0" class="jaUtilizei"/>
				</form>
				<form class="nao">
					<input type="hidden" value="<?php echo $reg->used_id ?>" name="id" />
					<input type="hidden" value="<?php echo $id ?>" name="user_id" />
					<input type="hidden" value="<?php echo $reg->offer_id ?>" name="offer_id" />
					<input type="hidden" value="<?php echo $reg->partner_id ?>" name="partner_id" />
					<input type="hidden" value="0" name="used_user" />
					<input type="hidden" value="0" name="used_partner" />
					<input type="submit" value=" " border="0" class="aindaNao"/>
				</form>
			</div>

			<div class="btn2"></div>
		</div>	

 

<script type="text/javascript">
	$(document).ready(function(){

		$(".jaUtilizei").click(function(){

			var form         = $(this).parent(".utilizei");
               var params       = form.serialize();
               var loading      = $("#loading");
               var btn          = form.parent(".btn");
               var btn2         = btn.parent(".tst").find(".btn2");

			$.ajax({
				type: "POST",
				data: params,
				url: "used_user.php",
				beforeSend: function(){
					loading.html("<img src='<?php echo $Sql->root ?>imgs/ajax-loader.gif'>");
				},
				success: function(){
					loading.html("");
					btn.css("display","none");
					btn2.html("Enviado com sucesso!");
				},
				error: function(e){
					loading.html(e);
				}
			});				
			return false;
		});

		$(".aindaNao").click(function(){

			var form         = $(this).parent(".nao");
               var params       = form.serialize();
               var loading      = $("#loading");
               var btn          = form.parent(".btn");
               var btn2         = btn.parent(".tst").find(".btn2");



			$.ajax({
				type: "POST",
				data: params,
				url: "used_user.php",
				beforeSend: function(){
					loading.html("<img src='<?php echo $Sql->root ?>imgs/ajax-loader.gif'>");
				},
				success: function(){
					loading.html("");
					btn.css("display","none");
					btn2.html("Enviado com sucesso!");
				},
				error: function(e){
					loading.html(e);
				}
			});				
			return false;
		});
	});		
</script>

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.