El problema que tengo es que la lista de productos se genera con un foreach y el codigo funciona bien pero solo con el primer producto, con los demas no funciona. ¿Como podria hacer?
Si selecciono el segundo, tercero o cuarto se actualiza el primero nomas, en vez de actualizarse donde corresponde.
Dejo los codigos que use:
Código Javascript:
Ver original
<script type="text/javascript"> function showUser(str) { if (str=="") { document.getElementById("cargarproducto").innerHTML=""; return; } if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("cargarproducto").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","catalog/model/catalog/obtendatos.php?q="+str,true); xmlhttp.send(); } </script>
Código HTML:
Ver original
<?php $counter=0; foreach ($products as $product) { if ($counter == 0 ) $xclass = 'alpha'; else if (($counter+12) % 12 == 0 ) $xclass = 'alpha4 alpha3'; else if (($counter+4) % 4 == 0 ) $xclass = 'alpha4'; else if (($counter+3) % 3 == 0 ) $xclass = 'alpha3'; else $xclass = ''; if (($counter+2) % 2 == 0 ) $xclass .= ' odd'; ?> <div class="grid-box <?php echo $xclass; ?>"> <div class="inner"> <?php if ($product['price'] && $product['special']) { ?> <?php } ?> <?php if ($product['thumb']) { ?> <div class="image"> <a href="<?php echo $product['href']; ?>"> </div> <?php } ?> <div class="name"> <form id="form1" name="form1" method="GET" action=""> <select name="users" onchange="showUser(this.value)"> <?php $eliminar = $product['model']; $terms = substr($eliminar, 0, 9); $modelo_query = $this->db->query("SELECT * FROM product WHERE model LIKE '%" . $terms . "%'"); $modelos = array(); if ($modelo_query->num_rows > 0) { foreach ($modelo_query->rows as $result) { $modelos[] = array('modelo' => $result['model'],);?> <?php } } ?> </select> </form> </div> <div class="cart"> </div> </div> </div> <?php } ?>
obtendatos.php
Código PHP:
Ver original
<?php require_once('../../../config.php'); require_once(DIR_SYSTEM . 'startup.php'); $db = new DB(DB_DRIVER, DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE); $q=$_GET["q"]; $GroupId = 44; { $special_query = mysql_query("SELECT * FROM product_special WHERE product_id LIKE '%" . $row['product_id'] . "%' AND customer_group_id LIKE '%" . $GroupId . "%'"); if ($row['quantity'] > 0) { $disponible = 7; $stock_query = mysql_query("SELECT * FROM stock_status WHERE stock_status_id LIKE '%" . $disponible . "%'"); $rstock = $stock['name']; } if ($row['price']) { echo '<div class="price">'; if (!$row_s['price']) { echo '<span>'; echo 'Precio: '; echo '</span>'; echo $row['price']; } else { echo '<span>'; echo 'Precio: '; echo '</span>'; echo '<span class="price-new">'; echo $row_s['price']; echo '</span>'; } echo '</div>'; } echo '<div class="actions">'; echo '<div class="cart">'; if ($row['price']) { echo $rstock; echo '<br>'; } echo 'Cantidad: '; echo '<input type="text" name="quantity" value="" class="input-mini" id="quantity-'.$row['product_id'].'">'; if ($rstock !== "Sin disponibilidad") { echo '<br><input id="boton" name="boton" type="button" value="Añadir a la cesta" onclick="addQtyToCart('; echo "'"; echo $row['product_id']; echo "'"; echo ');" class="btn btn-cart btn-small" />'; } echo '</div>'; echo '</div>'; } ?>