PDA

Ver la Versión Completa : PHP5 + Fiberibd


jgutti
12-10-2005, 21:53:53
Hola al foro, tengo un problema para realizar consultas en php5 + firebird

1.- Una consulta simple funciona sin problemas



$stmt = 'SELECT * FROM CIUDAD ';
$sth = ibase_query($dbh, $stmt);
while ($row = ibase_fetch_row($sth))
{Printf($row[0],$row[1]);}


2.- Esta consulta al pasarle parametros no funciona



$codigo=4; // el codigo es un valor numerico
$stmt = 'SELECT * FROM CIUDAD where Codigo <= $codigo';
$sth = ibase_query($dbh, $stmt);
while ($row = ibase_fetch_row($sth))
{Printf($row[0],$row[1]);}


3.- Nota estas consultas en PHP4 funcionaban sin problemas

desde ya gracias por la ayuda

atte

jgutti

apicito
13-10-2005, 07:44:41
Creo que el problema está en:
$stmt = 'SELECT * FROM CIUDAD where Codigo <= $codigo';
que debería ser:
$stmt = 'SELECT * FROM CIUDAD where Codigo <='. $codigo;

jgutti
13-10-2005, 15:44:07
gracias apicito, me funciono perfecto el codigo que enviaste para parametros con valor Numerico.
$codigo=4;
$stmt = 'SELECT * FROM CIUDAD where Codigo <='. $codigo

- ahora quiero realizar la misma consulta pero con un parametro con valor string
$nombre='MADRID';
$stmt = 'SELECT * FROM CIUDAD where nombre ='. $nombre

esta instrucción no resulto

desde ya gracias por la ayuda
jgutti

lpmlpm
13-10-2005, 17:06:06
Que tal esto:


$stmt = 'SELECT * FROM CIUDAD where Codigo <= "'. $codigo . '"';


Con esto te debe funcionar tanto para valores numpericos como alfabéticos

apicito
14-10-2005, 07:38:23
O lo que es lo mismo, pero a mi me parece más claro:

$stmt = 'SELECT * FROM CIUDAD where nombre ='.chr(39).$nombre.chr(39);