Ver Mensaje Individual
  #4 (permalink)  
Antiguo 05/07/2011, 18:28
CristhianUNSa
 
Fecha de Ingreso: junio-2011
Mensajes: 23
Antigüedad: 12 años, 11 meses
Puntos: 1
Respuesta: Duplicar Consulta para manejo de datos

No quería dar motivos porque iba a ser mas largo, pero bueno, el objetivo de esto es poder ir buscando un ID de producto dentro de la consulta (tengo un while que va recorriendo ID por ID, y no están ordenados por ID, sino por nombre), para poder restar del stock si alguna persona hizo el alquiler de vajilla en una semana específica. Pongo algo del código que tengo, lo único que falta es eso y cuando quiero ir restando del stock solo se resta del primer producto, porque cuando termina el fetch_array ya se acaban las filas y no puedo seguir buscando ahí

Código PHP:
//Obtengo los dias tope
        
$lunes=date('Y-m-d',mktime(000$mes  $dia-$paralunes$anio));
        
$sabado=date('Y-m-d',mktime(000$mes  $dia+$parasabado$anio));
        
//Hago la consulta de la cantidad de productos por ID
        
$consultaprod=tep_db_query("
            SELECT op.products_id, SUM( op.products_quantity ) AS Acumulado
            FROM customers c, orders o, orders_products op
            WHERE c.customers_dob >= '"
.$lunes."'
            AND c.customers_dob <= '"
.$sabado."'
            AND c.customers_id = o.customers_id
            AND o.orders_id = op.orders_id
            GROUP BY op.products_id
        "
) or die("Problemas en el select:".mysql_error()); 
Lo que me importa de ahí es el Acumulado para restarlo, pero para eso necesito el ID

Código PHP:
if(!$haycliente){
                
$prod_list_contents .= '        <td align="right">' $listing['products_quantity'] . '</td>';
            }
            else{
                
$stocksemanal=$listing['products_quantity'];
                
//$encontrado=false;
                
$consultaprodb=$consultaprod;
                while (
$fila=tep_db_fetch_array($consultaprodb)){
                    if (
$fila['products_id']==$listing['products_id']) {
                        
$stocksemanal-=$fila['Acumulado'];
                    }
                }
                
                
$prod_list_contents .= '        <td align="right">' $stocksemanal '</td>';
            } 
El $stocksemanal es el que tengo que mostrar, por eso necesito duplicar la consulta para poder seguir buscando los ID que necesite nuevamente (ya que al último el fetch_array ya ni devuelve una fila, solo devuelve FALSE y no entra en el while). Por cierto el tep_db_query y el tep_db_fetch_array son funciones del oscommerce