Problemas cambio de funcion de mysql a interbase
Publicado por David (1 intervención) el 11/12/2006 10:18:35
Hola, mi problema es el siguiente, tengo una funcion realizada en php, que recorre una base de datos para mostrar un menu dinamico, y todo iba bien en cuanto usaba mysql, pero ahora por problemas y otras cosas que seria muy largo explicar debo usar interbase/firebird, y una vez hecho todo los cambios me encuentro con un fallo, y es que la sentencia count(*) para una variable fila no funciona o no se trasladarla de mysql a firebird.
El codigo es el siguiente:
<?php
function Menu($categoria)
{
$link=Conectarse();
$result=ibase_query("select * from tbCategoriasArticulos where CodigoPadre=$categoria",$link);
while($fila1 = ibase_fetch_object($result)){
$dev = $fila1->DESCRIPCION;
$codigo = $fila1->CODIGO;
$sql = "select count(*) from tbCategoriasArticulos where CodigoPadre=$codigo";
$resultado = ibase_query($sql,$link);
$fila=ibase_fetch_object($resultado);
$alias2 = $alias + $codigo;
if($fila['count(*)']!=0) /*AQUI ES DONDE NO SE QUE PONER PARA FIREBIRD*/
{?>
<li style="font-size:13px; font-family:Arial, Helvetica, sans-serif"><a href="#"><input type="hidden" /><?php echo $dev." ";?></a>
<ul>
<?php Menu($codigo);?> </ul>
</li>
<?php
}else{?>
<li style="font-size:13px; font-family:Arial, Helvetica, sans-serif"><a href="listado.php?categoria=<?php echo $codigo; ?>"
id="nada" target="cuerpo">
<input type="hidden" /> <?php echo $dev;?></a></li>
<?php
}
ibase_free_result($resultado);
}
}
Menu(0); ?>
Como veis, es en if($fila['count(*)']!=0) donde iba bien mysql, pero no se su cambio natural para que funcione en firebird.
Gracias de antemano y espero que me podais ayudar
Saludos....
El codigo es el siguiente:
<?php
function Menu($categoria)
{
$link=Conectarse();
$result=ibase_query("select * from tbCategoriasArticulos where CodigoPadre=$categoria",$link);
while($fila1 = ibase_fetch_object($result)){
$dev = $fila1->DESCRIPCION;
$codigo = $fila1->CODIGO;
$sql = "select count(*) from tbCategoriasArticulos where CodigoPadre=$codigo";
$resultado = ibase_query($sql,$link);
$fila=ibase_fetch_object($resultado);
$alias2 = $alias + $codigo;
if($fila['count(*)']!=0) /*AQUI ES DONDE NO SE QUE PONER PARA FIREBIRD*/
{?>
<li style="font-size:13px; font-family:Arial, Helvetica, sans-serif"><a href="#"><input type="hidden" /><?php echo $dev." ";?></a>
<ul>
<?php Menu($codigo);?> </ul>
</li>
<?php
}else{?>
<li style="font-size:13px; font-family:Arial, Helvetica, sans-serif"><a href="listado.php?categoria=<?php echo $codigo; ?>"
id="nada" target="cuerpo">
<input type="hidden" /> <?php echo $dev;?></a></li>
<?php
}
ibase_free_result($resultado);
}
}
Menu(0); ?>
Como veis, es en if($fila['count(*)']!=0) donde iba bien mysql, pero no se su cambio natural para que funcione en firebird.
Gracias de antemano y espero que me podais ayudar
Saludos....
Valora esta pregunta


0