Autor Zpráva
rad
Profil *
mam problem jak vybrat prvek pro ajax - kod je v poradku - jinak by ostatni taky nefungovalo - spis nemohu prijit na to jak volat prvek input quantity v cart.php
poradite ?
diky


	$("#cart tr .quantity input").change(function() {
		var orderCode = $(this).attr("name").slice(9, -1);
		var quantity = $(this).val();
		$.ajax({
			type: "GET",
			url: "cart_action.php",
			data: "quantity[" + orderCode + "]=" + quantity,
			success: function() {
				var startColor = $("#cart tr .quantity input[name*=" + orderCode + "]").parent().parent().hasClass("odd") ? "#eee" : "#fff";
				$("#cart tr .quantity input[name*=" + orderCode + "]").parent().parent().find("td").animate({ backgroundColor: "#ff8" }, 100).animate({ backgroundColor: startColor }, 800);
				calcPrice();
			},
			error: function() {
				window.location("cart_action.php?quantity[" + orderCode + "]=" + quantity);
			}
		});
	});
});




cart.php


<?php
						$total_price = $i = 0;
						foreach ( $Cart->getItems() as $order_code=>$quantity ) :
						$total_price += $quantity*$Cart->getItemPrice($order_code);
											
					?>				
			  			<?php echo $i++%2==0 ? "<tr>" : "<tr class='odd'>"; ?>
							<td class="quantity center"><input type="text" name="quantity[<?php echo $order_code; ?>]" size="3" value="<?php echo $quantity; ?>" tabindex="<?php echo $i; ?>" /></td>
							<td class="item_name"><?php echo $Cart->getItemName($order_code); ?></td>
							<td class="order_code"><?php echo $order_code; ?></td>
														
							<td class="unit_price">$<?php echo $Cart->getItemPrice($order_code); ?></td>
							
              <td class="extended_price">$<?php echo ($Cart->getItemPrice($order_code)*$quantity); ?></td>
							
							<td class="remove center">
              
              <input type="checkbox" name="remove[]" value="<?php echo $order_code; ?>" /></td>
              
						</tr>


cart_action.php
$Cart = new Shopping_Cart('shopping_cart');

if ( !empty($_GET['order_code']) && !empty($_GET['quantity']) )

  {     
	$quantity = $Cart->getItemQuantity($_GET['order_code'])+$_GET['quantity'];		
  $Cart->setItemQuantity($_GET['order_code'], $quantity);  
      
  }

if ( !empty($_GET['quantity']) )
   {
	foreach ( $_GET['quantity'] as $order_code=>$quantity )
   {
	  $quantity = stripslashes($quantity);
    $quantity = mysql_real_escape_string($quantity); //SQL INJECTION ???
    
//    if () STOCK
//    {}
//    else
    
	{$Cart->setItemQuantity($order_code, $quantity);}
	}
}
Chamurappi
Profil
Reaguji na rada:
Nejspíš nikdo nerozumí otázce, proto nedostáváš žádnou odpověď.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0