$queri = $co->prepare($sql);
$queri->execute();
$resultado = $queri->fetchAll();
foreach ($resultado as $row) {
... da todos los registros pero el primero siempre en blanco !!
}

¿ alguna idea de que pueda ser ??
| |||
select a firebird con php Estoy haciendo un select a firebird en php, con la clase pdo y cuando voy para leer los registros, resulta que, supongamos que haya 10, vienen los 10, pero el primero siempre está en blanco, lo he comprobado con cualquier consulta y hace lo mismo, me tiene desconcertado. $queri = $co->prepare($sql); $queri->execute(); $resultado = $queri->fetchAll(); foreach ($resultado as $row) { ... da todos los registros pero el primero siempre en blanco !! } ![]() ¿ alguna idea de que pueda ser ?? |
| ||||
Respuesta: select a firebird con php que te muestra la tabla en el administrador de la base de datos??
__________________ Copia del MANUAL PHP OFICIAL EN ESPAÑOL "ahora con tecnologia de google en el buscador". |
| |||
Respuesta: select a firebird con php Esto es un servidor de prueba que me he montado con mi pc, el de producción va bien, el de producción es un winxp yel mio un w7 de 64. En todas las tablas y todas las consultas me hace lo mismo, hasta el punto que he tenido que montar las consultas de manera que me den un primer registro repetido, de manera que luego puede saltar al segundo y tendo los datos bien. Este es una de las consultas tal como la tengo montada, lo que hace es leer los datos de la empresa, para colocarlos en una factura que hago al vuelo en pdf: $sql = " Select empresa, direccion as dirempre, ciudad as ciudadempre, region as provempre , codpostal as cpempre, nif as nifempre, pais as paisempre, numtel as telempre, fax as faxempre from infge where idreg = '1' union all Select empresa, direccion as dirempre, ciudad as ciudadempre, region as provempre , codpostal as cpempre, nif as nifempre, pais as paisempre, numtel as telempre, fax as faxempre from infge where idreg = '1'"; try { $queri = $co->prepare($sql); $queri->execute(); $empresa = $queri->fetchAll(); $queri = NULL; unset($empresa[0]); //-registro no válido, debido a que se pierde el primer registro, no se porque. $empresa = array_shift($empresa); //-saca el primer registro válido y lo reasigna } catch (PDOException $e) { $ok = false; $queri = NULL; $inf = $e->getMessage(); } Se puede ver que con la clausula union, lo que hago es duplicar el dato que le pido a la base de datos, luego después de recogidos los 2 registros que me da, porque me devuelve 2 registros, pero el primero siempre contiene datos en blanco, lo que hago es eliminar el primero y luego con el array_shift pongo los datos del segundo en el array que luego voy a utilizar para la factura. Y así en todas las consultas aunque tengan que devolver 1 registro ó más de uno, siempre tengo que duplicar el primero. Menos mal que como he dicho antes, en el pc de produccion si que va bien !! ![]() |
| ||||
Respuesta: select a firebird con php podrias ver el codigo de insert pues puede que este insertando algo mal. tambien podrias filtrar las consultas para que no saque las filas vacias (esto es solucion parche).
__________________ Copia del MANUAL PHP OFICIAL EN ESPAÑOL "ahora con tecnologia de google en el buscador". |
Etiquetas: |