Foros del Web » Programando para Internet » PHP »

Varios Select en PHP.

Estas en el tema de Varios Select en PHP. en el foro de PHP en Foros del Web. Hola. Quiero hacer algunos select mysql en una página PHP. Por ejemplo tengo una tabla así en la BD: Código PHP: Tabla :  'tabla1' Actividades             Revisar               ...
  #1 (permalink)  
Antiguo 08/07/2009, 11:03
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Varios Select en PHP.

Hola.

Quiero hacer algunos select mysql en una página PHP.

Por ejemplo tengo una tabla así en la BD:

Código PHP:
Tabla'tabla1'

Actividades             Revisar              (Campos)

act1                          1                   (Valores)
act2                          0
act3                          0
act4                          0 
En el campo revisar, '1' significa que esa actividad ya la 'procesé', y '0' que aún no.

Mi proceso consiste en 3 páginas, en la 1 y 2 se realizan varios procesos, y en la 3 se insertan los valores a la BD. Este se proceso se realiza 1 vez por línea, osea en el caso del ejemplo de arriba, se realizaría 3 veces (porque la primera línea tiene '1').

Lo que yo quiero es que en la primera página me haga un select, para que me tome en cuenta 1 línea solamente que contenga '0' en Revisar, en éste caso sería 'act2', y al llegar a la página 3, se actualice en la línea de 'act2' el campo 'revisar' y pase de '0' a '1', porque ya se procesó.

Y otro select que quisiera hacer, es para tomar un valor de la misma línea que se está procesando en la página 1, y convertirla en variable.

Espero puedan ayudarme les agradezco de antemano su atención.

Saludos.
  #2 (permalink)  
Antiguo 08/07/2009, 11:06
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 8 meses
Puntos: 55
Respuesta: Varios Select en PHP.

bueno pero cual es tu problema??
pq veo q tienes bien claro lo q quieres y hasta entiendes la logica del proceso

__________________
Degiovanni Emilio
developtus.com
  #3 (permalink)  
Antiguo 08/07/2009, 11:16
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Varios Select en PHP.

Pues como haría ambos select, la sintaxis más que nada.

Saludos.
  #4 (permalink)  
Antiguo 08/07/2009, 11:28
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Varios Select en PHP.

Pues un simple:
Código sql:
Ver original
  1. SELECT * FROM tabla WHERE campo='algo'

La parte importante es la del where, y si quieres usar varios pues solo manda a llamar a mysql_query las veces que necesites.

Saludos.
  #5 (permalink)  
Antiguo 08/07/2009, 11:47
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Varios Select en PHP.

Y si digamos que tengo la tabla así:

Código PHP:
Tabla'tabla1'

Actividades             Revisar        Fecha1        Fecha2              (Campos)

act1                          1               14-Jun-09    14-Oct-09         (Valores)
act2                          0               14-Nov-10    14-Ene-10 
act3                          0               14
-Feb-10    14-Jul-10
act4                          0               14
-Ene-11     14-Jun-11 
Y quiero convertir Fecha1 y Fecha2 en variables, pero sólo tomando en cuenta a los que en 'Revisar' sean '0'. ¿cómo sería?

EDIT: Ya pude resolver eso, sólo me queda una última duda.

Y es en la tercera página al hacer todo el proceso, ¿Cómo puedo haber que cambie en el campo 'revisar de '0' a '1', para que en la siguiente vuelta no vuelva a tomar en cuenta ésa línea?

Saludos.

Última edición por Gaug; 08/07/2009 a las 12:37
  #6 (permalink)  
Antiguo 08/07/2009, 18:28
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Varios Select en PHP.

Con un UPDATE puedes cambiar esa columna.

Saludos.
  #7 (permalink)  
Antiguo 09/07/2009, 08:55
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Hacer Update en PHP.

Hola.

Quiero hacer un 'UPDATE' a una fila de una columna de una BD por medio de PHP.

Tengo éste código, pero me cambia toda la columna:

Código PHP:
$SQL="update reg_activ  set revisar='1' where revisar='0'"
La columna de 'revisar' tiene solamente '0', en todas las filas, lo que yo quiero es que solamente lo cambie a '1' una sóla fila. ¿Me explico?

Espero puedan ayudarme, gracias de antemano.

Saludos.
  #8 (permalink)  
Antiguo 09/07/2009, 08:58
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Hacer Update en PHP.

bueno si todas las filas de la columna revisar tiene 0 puedes usar el LIMIT 0, 1 para modificar entonces solamente la primera

http://mysql.conclase.net/curso/index.php?sen=UPDATE
  #9 (permalink)  
Antiguo 09/07/2009, 08:59
Avatar de marcosr  
Fecha de Ingreso: agosto-2005
Ubicación: Montevideo, Uruguay
Mensajes: 451
Antigüedad: 18 años, 8 meses
Puntos: 5
Respuesta: Hacer Update en PHP.

Tienes que darle otra condición.


Código:
UPDATE reg_activ SET revisar = '1' WHERE oto_campo = 'n' AND revisar = '0'

De lo contrario el buscara todas las que revisar sea 0.


Saludos
__________________
Yo hago preguntas inteligentes para obtener respuestas rapidas, y vos?
(únete a la campaña !)
  #10 (permalink)  
Antiguo 09/07/2009, 09:00
Avatar de ACX_POISON  
Fecha de Ingreso: abril-2008
Ubicación: Talca-Chile
Mensajes: 750
Antigüedad: 16 años
Puntos: 7
Respuesta: Hacer Update en PHP.

si tiene id las filas pone
Cita:
WHERE id_fila='$id_fila'
que te parece???
__________________
Me junto con los que Saben, Queriendo Saber.
  #11 (permalink)  
Antiguo 09/07/2009, 09:05
Avatar de oktubre  
Fecha de Ingreso: agosto-2003
Ubicación: en mi casa
Mensajes: 371
Antigüedad: 20 años, 8 meses
Puntos: 4
Respuesta: Hacer Update en PHP.

claro,
lo que te comentan aquí es tal cual.
cuando estas metiendo esa cosulta, lo que estas diciendo como condición es que actualice a 1 todos los campos revisar que estan en '0'.
si este campo es un flag y lo utilizas por ejemplo para autorizar o no una nota, o algun tipo de dato a confirmar, lo ideal es que tomes en cuenta lo que dice MARCOSR y en primera instancia filtres cual es la fila en la db que vas a actualizar.
por las dudas, no te conviene señalarle el id del dato? id me refiero a la clave primaria de esa tabla.
saludos,
__________________
w32.oktubre@mm <----------------<<<<
prefiero cerrar la boca y parecer un tonto que abrirla y confirmarlo.
  #12 (permalink)  
Antiguo 09/07/2009, 09:05
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Hacer Update en PHP.

Lo que busco no es compararlo con otra columna, y en ocasiones no toda la columna va a ser '0'

Puede ser algo así:

1
1
0
0
1
0
1
1
0

Lo que yo quiero es que empiece a tomar en cuenta el primer '0' de arriba hacia abajo, hasta que todos sean 1.

Otra cosa, me gustaría hacer un 'if' que revise en esa misma columna si todavía hay '0', para poner un 'else', si es que no, osea que si ya todos son '1', entonces que haga otra cosa.

Saludos.
  #13 (permalink)  
Antiguo 09/07/2009, 09:10
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Hacer Update en PHP.

Me perdi. Quieres esto

Cita:
Iniciado por Gaug Ver Mensaje
lo que yo quiero es que solamente lo cambie a '1' una sóla fila.
o esto
Cita:
Iniciado por Gaug Ver Mensaje
Lo que yo quiero es que empiece a tomar en cuenta el primer '0' de arriba hacia abajo, hasta que todos sean 1.
Bueno si lo que quieres modificar todos las columnas a 0 puedes escribir
Código PHP:
$SQL="update reg_activ set revisar=1"
  #14 (permalink)  
Antiguo 09/07/2009, 09:12
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Hacer Update en PHP.

Perdón abimaelrc, seguro te confundí.

Lo que pasa es que yo estoy repitiendo un proceso varias veces, y cada vez que lo termino, cambio la primera fila que sea '0' a '1', entonces, llega un momento en que todos son '1', por eso quiero el 'if'.

¿Me explico?

Saludos.
  #15 (permalink)  
Antiguo 09/07/2009, 09:20
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Hacer Update en PHP.

Ok pero para saber es ¿que tienes alguna aplicacion que se pasa llenando los campos y mientras estas haciendo los cambios puede ser que haya cambiado algo de nuevo a 0?
  #16 (permalink)  
Antiguo 09/07/2009, 09:25
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Hacer Update en PHP.

No para nada, ése campo no se modifica, solamente hasta el final, y con el 'update' que estoy buscando como hacer. También, me gustaría que me ayudarás a hacer el 'if', no tengo idea de como hacerlo con valores de una BD.

Saludos.
  #17 (permalink)  
Antiguo 09/07/2009, 09:32
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Hacer Update en PHP.

Pero esto no te funciona?

Código PHP:
$SQL="update reg_activ set revisar=1"
Luego que hagas el cambio haces un select y con el if verificas si existe

Código PHP:
$s "SELECT revisar FROM reg_activ WHERE revisar = 0";
$r mysql_query($s) or die(mysql_error());

if(
mysql_num_rows($r) > 0){
  
//codigo cuando hay 0
}else{
  
//codigo cuando no hay 0

  #18 (permalink)  
Antiguo 09/07/2009, 09:41
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Varios Select en PHP.

Temas unidos porfavor NO dupliques temas.
  #19 (permalink)  
Antiguo 09/07/2009, 09:49
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Hacer Update en PHP.

El 'if' sí es lo que estoy buscando, pero el 'update' que pones me actualiza toda la columna, y yo sólo quiero que me actualice la primera fila que tenga '0'.

Ejemplo:
Código PHP:
revisar

1
<-- Esta es la que va a cambiar a '1'
1

¿Me explico?

Saludos.
  #20 (permalink)  
Antiguo 09/07/2009, 10:01
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Varios Select en PHP.

Gaug usa lo que te sugeri al principio el LIMIT 1

Última edición por abimaelrc; 09/07/2009 a las 10:23
  #21 (permalink)  
Antiguo 09/07/2009, 10:11
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Varios Select en PHP.

Lo tengo así

Código PHP:
$SQL="update reg_activ  set revisar='1' where revisar='0' LIMIT 0, 1"
Y me marca error de sintaxis.

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' 1' at line 1

Saludos.
  #22 (permalink)  
Antiguo 09/07/2009, 10:22
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Varios Select en PHP.

Tratalo asi

Código PHP:
$SQL="UPDATE reg_activ SET `revisar` = 1 WHERE `revisar` = 0 LIMIT 1"
  #23 (permalink)  
Antiguo 09/07/2009, 10:27
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Varios Select en PHP.

Ya funciona, sólo quité el 'set' que está antes de revisar y listo.

Muchas gracias por tu ayuda
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 17:50.