Cita:
Iniciado por sumolari Mira, el PHP se ejecuta igual en cualquier navegador, ya que lo interpreta el servidor, no el navegador, así que el error debe de ser de HTML o de Javascript.
También puede pasar que tengas algún error en el código PHP (la verdad, no lo he revisado) y que la primera vez que añades producto (con IE) se añade bien, y las siguientes (con FF), las añada mal.
Revisa eso y postea el HTML / Javascript que usas para determinar el número de productos a añadir.
Bueno no se ya no se me ocurre nada , el código html no creo que tenga mucho que ver con la función que añade artículos al carrito ,el problema tiene que estar aqui pero no lo encuntro. Repito con Explorer funciona PERFECTAMENTE con firefox NO , se como supongo la mayoría que frecuentamos estos foros que el php se ejecuta en el servidor no en el navegador pero aún así no entiendo como puede añadirse 1 artículo en explorer y en mozilla (cuando le da la gana) 2 o 1 según.
Este es el código que creo puede ser el causante. Por cierto las multiplicaciones y demás las hace correctamente , es decir si añade 2 y vale 5 pone 10 si añade 1 solo 5 , lo digo para que se vea que el tema lógico funciona perfectamente , por lo que lo que se almacena en la propiedad $this->array_qty[$this->num_productos] es la cantidad correcta según sea 1 artículo o 2.
Código:
function introduce_producto($id_art,$nombre_prod,$precio_prod,$img,$ref,$qty ){
//inicioamos la variable exists a false
$exist=false;
if (@in_array($id_art,$this->array_id_art) )
//Buscamos la posición el la que sa haya el artículo para sumarle 1
foreach ( $this->array_id_art as $pos => $value )
{
if ( $id_art == $value && $exist==false)
{
//Actualiza la cantidad de unidades de un artículo determinado y llama a la función que actualiza el precio //total del artículo
$qty=$this->array_qty[$pos] + 1; //Esto para cuando se de un clic desde la tienda
//actualizamos las cantidades de los productos sumándoles 1 solamente
$this->array_qty[$pos]=$qty;
$this->update_cart ($pos,$qty);
$exist=true;
}
}//fin del foreach
if ($exist==false)
{
$this->array_qty[$this->num_productos]=1;
$this->array_id_art[$this->num_productos]=$id_art;
$this->array_name[$this->num_productos]=$nombre_prod;
$this->array_price[$this->num_productos]=$precio_prod;
$this->array_img[$this->num_productos]=$img;
$this->array_price_total[$this->num_productos]=$this->array_price[$this->num_productos];
//guardamos el nombre de la imagen de cada producto en array
//$this->array_ref_prod[$this->num_productos]=$ref;
$this->num_productos++;
}
}
Salu_2 y gracias