Foros del Web » Programando para Internet » PHP »

PASAR dos valores dinamicos a una función

Estas en el tema de PASAR dos valores dinamicos a una función en el foro de PHP en Foros del Web. Buenas para todos, estoy recibiendo un array en una cadena el cual separo a traves explode, luego cuento ese array y en un while debo ...
  #1 (permalink)  
Antiguo 10/08/2011, 16:25
 
Fecha de Ingreso: abril-2009
Ubicación: Colombia
Mensajes: 949
Antigüedad: 15 años, 7 meses
Puntos: 27
PASAR dos valores dinamicos a una función

Buenas para todos, estoy recibiendo un array en una cadena el cual separo a traves explode, luego cuento ese array y en un while debo hacer una consulta co cada posicion, lo tengo asi:

Código PHP:
Ver original
  1. <?php
  2. $ing=explode("@",$ing);
  3. $folio=explode("@",$folio);
  4. $conteo=count($folio);
  5. $i=1;
  6. while ($i<$conteo)
  7. {
  8. $sql="SELECT ... FROM TABLA WHERE WHERE AINCONSEC = '".$ing[$i]."' AND HCCONFOLI = '".$folio[$i]."'";
  9. $obj->consulta($sql);
  10. $i++;
  11. }
  12. ?>

Habia hecho una funcion y la estaba utilizando asi:

Código PHP:
Ver original
  1. function headercon($folio,$ing)
  2. {
  3. //aca la consulta
  4. }

Pero necesito que la consulta la haga para cada posicion, podria hacerla utilizando solo una letra?, es decir solo con $i para ambos casos, como pasaria dichos valores?
  #2 (permalink)  
Antiguo 10/08/2011, 22:40
Avatar de cuasatar  
Fecha de Ingreso: junio-2011
Ubicación: Bogotá Rock City
Mensajes: 1.230
Antigüedad: 13 años, 5 meses
Puntos: 181
Respuesta: PASAR dos valores dinamicos a una función

Hola, resumo lo que quieres hacer a ver si entendi:

Necesitas hacer una consulta donde se cumplan las condiciones valor 1 y valor 2, pero como estan en un arreglo estas se repiten n veces, por lo tanto se necesitan hacer n consultas pero sin hacerlo de uno en uno.

Si es asi lo unico que se debe hacer es una consulta sql con la siguientes sintaxis:

select * from tabla where valor 1 in (arreglo 1) and valor 2 in (arreglo 2);

con in lo que se le esta diciendo es que para cada uno de los valores del arreglo se debe realizar la consulta. Por supuesto arreglo 1 y arreglo 2 deben tener la misma longitud.

Para dudas se puede buscar en manuales algunos ejemplos de como se utiliza la sintaxis in. Creo que con eso se debe resolver el problema. Ahora mismo lo tengo en un videotutorial pero en mi compu asi que no puedo pasar la referencia.
  #3 (permalink)  
Antiguo 11/08/2011, 06:21
 
Fecha de Ingreso: abril-2009
Ubicación: Colombia
Mensajes: 949
Antigüedad: 15 años, 7 meses
Puntos: 27
Respuesta: PASAR dos valores dinamicos a una función

Si, eso es lo que quiero hacer, pero con in no me sirve, la consulta se debe ejecutar n veces, segun el total del conteo, porque cada consulta genera una pagina pdf, entonces si el valor del conteo es 10, se genera un pdf desde el consecutivo 1 al 10....pero en hojas aparte, es decir, es el mismo pdf con varias hojas...solo que esto que necesito es para el encabezado del pdf, para no tener que repetir siempre la misma consulta cada vez q necesite que se cree un encabezado....
  #4 (permalink)  
Antiguo 11/08/2011, 06:52
Avatar de cuasatar  
Fecha de Ingreso: junio-2011
Ubicación: Bogotá Rock City
Mensajes: 1.230
Antigüedad: 13 años, 5 meses
Puntos: 181
Respuesta: PASAR dos valores dinamicos a una función

Y no se puede generar una subconsulta a partir de la primera consulta? O quizas limitando la consulta con LIMIT y que cada subconsulta se guarde en una variable nueva. (Es decir cada subconsulta, en este caso datos del encabezado tenga su propio valor).

Creo que buscar una función unica que lo haga todo no es posible, se debe mezclar condicionales o subconsultas o for para controlar las subconsultas a partir de la consulta general. No se me ocurre de momento nada mas.

Etiquetas: dinamicos, pasar, sql, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:15.