Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-09-2006
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 19
papulo Va por buen camino
Contar el numero de elementos de una consulta

Uso firebird, quiero hacer esto que se hace con

Código PHP:
 mysql_num_rows ($Cosulta); 
¿Hay alguna instruccion directa o tengo que hacerlo de forma "artesanal"?

Saludos y hola de nuevo a todos, que he estado de vacaciones unas semanas y se ha notado.

PD: Edito para decir, que lo que hace es contarme el numero de filas que me tiene la consulta que he ejecutado.

Quiero que si me devuelve mas de 20 resultados no muestre mas por pantalla.
__________________
"El aprendizaje potencia la intuición"
Yo mismo, en un momento de inspiración. v2.0
Responder Con Cita
  #2  
Antiguo 27-09-2006
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 19
papulo Va por buen camino
AAAARRIBAAAAA!!

Necesito ayuda,jops.

De los masters del universo (del PHP ...*cof! *cof! Dec! *cof!) que por aquí se que hay.


PD:En realidad de todos, pero cuando pienso en PHP, me viene Dec a la cabeza.
__________________
"El aprendizaje potencia la intuición"
Yo mismo, en un momento de inspiración. v2.0
Responder Con Cita
  #3  
Antiguo 27-09-2006
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos

No estoy muy pulido, pero prueba con Ibase_fetch_row().
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #4  
Antiguo 27-09-2006
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is online now
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Si la consulta es de varios campos de una tabla y condicionada con where y lo que sea, entonces no podrás hacerlo.
Si son todos los campos, lo haces con un simple count.
Esa sentencia (mysql_num_rows ($Cosulta);) que indicas creo que lo que hace es ir al último registro para poder saber los que hay, es como si hicieras el select, luego haces un .last para ejecutar el recordcount y seguidamente vas al principio .first
Responder Con Cita
  #5  
Antiguo 27-09-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
MySql tiene dos formas de mandar los resultados al cliente: de uno a uno o en bonche todos juntos. Hasta donde tengo entendido, PHP usa la segunda forma, de manera que siempre se sabe cuántos registros hay y por ello puede usarse mysql_num_rows. Si en IB noexiste tal función, me supongo que es porque sólo se mandan los resultados de uno a uno y por ello no puede saberse cuántos hay sino hasta que se han recorrido todos.

No entiendo muy bien porque Casimiro menciona que no se puede usarse count si hay una cláusula where o varios campos. Pienso que se puede saber la cantidad de registros haciendo una consulta COUNT previa con las mismas condiciones que la consulta original. Si bien es una consulta extra, normalmente debe ser bastante rápida y tratándse de un sólo dato el envío al cliente es muy rápido también así que imagino que casi no se notaría.

// Saludos
Responder Con Cita
  #6  
Antiguo 02-10-2006
Avatar de papulo
papulo papulo is offline
Miembro
 
Registrado: ago 2005
Ubicación: Lleida - Cataluña - España -Europa - Planeta tierra - Sistema solar - Via Lactea ...
Posts: 542
Poder: 19
papulo Va por buen camino
Al final, el tema era saber el numero de resultados que me devolvía la consulta realizada y si pasaba de 30, dejar de mostrarlos en pantalla, por lo que en la condicion
Código PHP:
while (($fila ibase_fetch_object ($consulta)) or ($max_request<=30))
{

y arreando, cuando pasa de 30 registros deja de mostrarlos y directamente muestra un mensaje.

Gracias por la ayuda, la idea del count se me había pasado por la cabeza, me parecía la mas lógica aunque no se si la mas eficiente.
__________________
"El aprendizaje potencia la intuición"
Yo mismo, en un momento de inspiración. v2.0
Responder Con Cita
  #7  
Antiguo 02-10-2006
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is online now
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por roman
[...]
No entiendo muy bien porque Casimiro menciona que no se puede usarse count si hay una cláusula where o varios campos. Pienso que se puede saber la cantidad de registros haciendo una consulta COUNT previa con las mismas condiciones que la consulta original. Si bien es una consulta extra, normalmente debe ser bastante rápida y tratándse de un sólo dato el envío al cliente es muy rápido también así que imagino que casi no se notaría.
// Saludos
Sólo quería decir que si tiene ya un select "normal" con sus campos y condicionantes normales, no puede añadirle al mismo el count para hacerlo de una sóla vez.
No sé... por ejemplo:
Código:
select tar.*, per.codigoregistro
from tbTareas tar
inner join tbPersonal per on (per.codigo=tar.dependiente)
where tar.Codigo= 13
order by tar.fechainicio
Ahí no puedes añadir el count, tendría que ejecutar una sentencia adicional para contarlos.
Esto es suponiendo que yo hubiese entendido bien la pregunta.
Responder Con Cita
  #8  
Antiguo 02-10-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
Empezado por Papulo
De los masters del universo (del PHP ...*cof! *cof! Dec! *cof!) que por aquí se que hay.

PD:En realidad de todos, pero cuando pienso en PHP, me viene Dec a la cabeza.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
IDE: .BPG con más de 100 elementos (peta!!) Neftali [Germán.Estévez] Varios 2 03-06-2005 17:25:12
Alinear elementos de un ListBox Tecnic2 OOP 2 05-01-2005 17:02:50
Limitar el numero de Registro de una Consulta en FireBird 1.5 Abel Garcia Firebird e Interbase 3 08-12-2004 23:57:31
Elementos no imprimibles Igna Impresión 4 12-01-2004 17:53:28
Buscado elementos xerkan Firebird e Interbase 3 15-10-2003 19:50:55


La franja horaria es GMT +2. Ahora son las 20:25:37.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi