Foros del Web » Programando para Internet » PHP »

recoger datos de una tabla y colocarlos en una consulta

Estas en el tema de recoger datos de una tabla y colocarlos en una consulta en el foro de PHP en Foros del Web. Hola, tengo el siguiente inconveniente y recurro a ustedes a ver si me pueden ayudar. tengo un codigo que muestra una serie de 4 referencias ...
  #1 (permalink)  
Antiguo 30/05/2015, 11:44
Avatar de gerbmx  
Fecha de Ingreso: enero-2013
Ubicación: buenos aires
Mensajes: 41
Antigüedad: 11 años, 10 meses
Puntos: 0
recoger datos de una tabla y colocarlos en una consulta

Hola, tengo el siguiente inconveniente y recurro a ustedes a ver si me pueden ayudar.

tengo un codigo que muestra una serie de 4 referencias que yo selecciono manualmente editando el codigo:

Código PHP:
mysqli_select_db(  $prueb,$database_prueb);
$query_Recordset1 "SELECT * FROM propiedades WHERE ref = '150' OR ref = '151' OR ref = '152' OR ref = '154' ";
$query_limit_Recordset1 sprintf("%s LIMIT %d, %d"$query_Recordset1$startRow_Recordset1$maxRows_Recordset1);
$Recordset1 mysqli_query$prueb,$query_limit_Recordset1) or die(mysql_error());
$row_Recordset1 mysqli_fetch_assoc($Recordset1); 
quiero que esas referencias, esos numeros que elijo: 150, 151, 152,154 los recoja de otra tabla que tengo en la base de datos
mi tabla destacados tiene los siguientes campos destacado1,destacado2,destacado3,destacado4. (150,151,152,154)

Quisiera que la consulta tome los datos de esas tablas (destacados), osea la cifra. asi no tengo q ponerlo manualmente tocando el codigo. estoy trabado con esto... ayudaaa

Me explico bien?
por favor si necesitan mas datos o informacion se los digo.
muchas graciass!!
  #2 (permalink)  
Antiguo 30/05/2015, 16:09
Avatar de Apolo_13  
Fecha de Ingreso: mayo-2015
Mensajes: 40
Antigüedad: 9 años, 6 meses
Puntos: 4
Respuesta: recoger datos de una tabla y colocarlos en una consulta

Hola.
has probado a sacar esos datos haciendo otra consulta que te los saque?
  #3 (permalink)  
Antiguo 01/06/2015, 03:13
Avatar de gerbmx  
Fecha de Ingreso: enero-2013
Ubicación: buenos aires
Mensajes: 41
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: recoger datos de una tabla y colocarlos en una consulta

Cita:
Iniciado por Apolo_13 Ver Mensaje
Hola.
has probado a sacar esos datos haciendo otra consulta que te los saque?
haciendo una consulta dentro de otra cosnulta? y como lo haria en este caso?, osea entre las comillas hago la consulta a la otra tabla?

Gracias!!
  #4 (permalink)  
Antiguo 01/06/2015, 09:57
Avatar de gerbmx  
Fecha de Ingreso: enero-2013
Ubicación: buenos aires
Mensajes: 41
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: recoger datos de una tabla y colocarlos en una consulta

Estoy intentadno hacer esto, para guardar los datsoe en 4 variables:

Código PHP:
$var1="";
$var2="";
$var3="";
$var4="";


        
$sql="select * from destacados";
        
$cs=mysqli_query($prueb,$sql);
        while(
$resul=mysqli_fetch_array($cs)){

            
$var1=$resul[0];
            
$var2=$resul[1];
            
$var3=$resul[2];
            
$var4=$resul[3];
            } 
pero me da el siguiente error:

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in ... on line 14 (en el comienzo del while).
  #5 (permalink)  
Antiguo 01/06/2015, 10:16
Avatar de zalito12  
Fecha de Ingreso: noviembre-2011
Ubicación: Coruña, España
Mensajes: 430
Antigüedad: 13 años
Puntos: 67
Respuesta: recoger datos de una tabla y colocarlos en una consulta

http://php.net/manual/es/mysqli.query.php

Si te da ese error es porque la consulta devolvió FALSE, o sea, que es incorrecta, antes de intentar acceder a los valores de una consulta comrpueba siempe que se ejecutó correctamente.
Mira de dónde viene el error, por ejemplo:
Código PHP:
Ver original
  1. $sql="select * from destacados";
  2.     $cs = mysqli_query($prueb,$sql) or die(mysql_error($prueb)); //Quitar el die() para producción, solo debug
  3.     if($cs != false){
  4.         while($resul=mysqli_fetch_array($cs)){
  5.              $var1=$resul[0];
  6.              $var2=$resul[1];
  7.              $var3=$resul[2];
  8.              $var4=$resul[3];
  9.          }
  10.     }else{
  11.          echo 'Tu error';
  12.     }

Además ten en cuenta que lo puedes solucionar con una subconsulta, mirando tus códigos sería algo tipo:

Código MySQL:
Ver original
  1. "SELECT * FROM propiedades WHERE ref IN (SELECT id FROM destacados)"
Esta última opción funciona si cada tupla de la tabla destacados se corresponde con una referencia de las que quieres mostrar, aunque en tu caso parece que no es así :S
__________________
Dicen que las personas piensan en su lengua materna, yo lo hago en PHP

Última edición por zalito12; 01/06/2015 a las 10:32
  #6 (permalink)  
Antiguo 01/06/2015, 12:01
Avatar de gerbmx  
Fecha de Ingreso: enero-2013
Ubicación: buenos aires
Mensajes: 41
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: recoger datos de una tabla y colocarlos en una consulta

Cita:
Iniciado por zalito12 Ver Mensaje
http://php.net/manual/es/mysqli.query.php

Si te da ese error es porque la consulta devolvió FALSE, o sea, que es incorrecta, antes de intentar acceder a los valores de una consulta comrpueba siempe que se ejecutó correctamente.
Mira de dónde viene el error, por ejemplo:
Código PHP:
Ver original
  1. $sql="select * from destacados";
  2.     $cs = mysqli_query($prueb,$sql) or die(mysql_error($prueb)); //Quitar el die() para producción, solo debug
  3.     if($cs != false){
  4.         while($resul=mysqli_fetch_array($cs)){
  5.              $var1=$resul[0];
  6.              $var2=$resul[1];
  7.              $var3=$resul[2];
  8.              $var4=$resul[3];
  9.          }
  10.     }else{
  11.          echo 'Tu error';
  12.     }

Además ten en cuenta que lo puedes solucionar con una subconsulta, mirando tus códigos sería algo tipo:

Código MySQL:
Ver original
  1. "SELECT * FROM propiedades WHERE ref IN (SELECT id FROM destacados)"
Esta última opción funciona si cada tupla de la tabla destacados se corresponde con una referencia de las que quieres mostrar, aunque en tu caso parece que no es así :S
Muchas gracias!!! con la segunda opcion lo solucione. Modifique la tabla para que cargue cada referencia en cada tupla con 4 id distintos.

me quedo asi:

Código PHP:
query_Recordset1 "SELECT * FROM propiedades WHERE ref IN (SELECT referencia FROM destacado) "
y la carga:
Código PHP:
mysql_query("Update destacado Set referencia='$destacado1' where id='1'",$con);
    
mysql_query("Update destacado Set referencia='$destacado2' where id='2'",$con);
    
mysql_query("Update destacado Set referencia='$destacado3' where id='3'",$con);
    
mysql_query("Update destacado Set referencia='$destacado4' where id='4'",$con); 
Lo repeti 4 veces, seguro hay otra forma mas corta pero esta me funciono.

La primera opcion no la entendi.

Muchas gracias

Etiquetas: mysql, recoger, select, 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 21:35.