
prblema con un switch
Publicado por alan alberto wiesse (58 intervenciones) el 22/05/2006 07:44:24
hola gente, me surgio un problema a la hora de comprar lo siguiente...
/////////////////////////////////////////////////////////////-CODIGO-/////////////////////////////////////////////////////////////
$query = "SELECT SUM(monto) FROM saldos WHERE id_cliente = 19";
$result = mysql_query ($query);
$row = mysql_fetch_array ($result);
switch ($row[0]){
case $row[0] < '0' : echo 'DEBE ' . abs($row[0]) . ' PESOS'; break;
case $row[0] > '0' : echo 'TIENE EN SU HABER ' . abs($row[0]) . ' PESOS'; break;
case $row[0] == '0' : echo 'CUENTA SALDADA '; break;
}
/////////////////////////////////////////////////////////////////-FIN-/////////////////////////////////////////////////////////////////
resulta que entra perfecto cuando el valor en $row[0] es menor o mayor a cero
pero cuando es igal a creo, entra en: case $row[0] < '0' : echo 'DEBE ' . abs($row[0]) . ' PESOS'; break;
que puede ser que este pasando ??? la verdad que me tiene desconecrtado ya que creo estar haciendo lo correcto .... verdad ???
desde ya muchas gracias al que desee contestarme algo
saludos desde corrientes argentina
P/D: el siguiente codigo si anda... pero con el afan de usar lo correcto en cada caso me surgio el problemita...
/////////////////////////////////////////////////////////////-CODIGO-/////////////////////////////////////////////////////////////
$query = "SELECT SUM(monto) FROM saldos WHERE id_cliente = 19";
$result = mysql_query ($query);
$row = mysql_fetch_array ($result);
if ($row[0]==0) echo 'CUENTA SALDADA ';
elseif($row[0]<0) echo 'DEBE ' . abs($row[0]) . ' PESOS';
elseif($row[0]>0) echo 'TIENE EN SU HABER ' . abs($row[0]) . ' PESOS';
/////////////////////////////////////////////////////////////////-FIN-/////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////-CODIGO-/////////////////////////////////////////////////////////////
$query = "SELECT SUM(monto) FROM saldos WHERE id_cliente = 19";
$result = mysql_query ($query);
$row = mysql_fetch_array ($result);
switch ($row[0]){
case $row[0] < '0' : echo 'DEBE ' . abs($row[0]) . ' PESOS'; break;
case $row[0] > '0' : echo 'TIENE EN SU HABER ' . abs($row[0]) . ' PESOS'; break;
case $row[0] == '0' : echo 'CUENTA SALDADA '; break;
}
/////////////////////////////////////////////////////////////////-FIN-/////////////////////////////////////////////////////////////////
resulta que entra perfecto cuando el valor en $row[0] es menor o mayor a cero
pero cuando es igal a creo, entra en: case $row[0] < '0' : echo 'DEBE ' . abs($row[0]) . ' PESOS'; break;
que puede ser que este pasando ??? la verdad que me tiene desconecrtado ya que creo estar haciendo lo correcto .... verdad ???
desde ya muchas gracias al que desee contestarme algo
saludos desde corrientes argentina
P/D: el siguiente codigo si anda... pero con el afan de usar lo correcto en cada caso me surgio el problemita...
/////////////////////////////////////////////////////////////-CODIGO-/////////////////////////////////////////////////////////////
$query = "SELECT SUM(monto) FROM saldos WHERE id_cliente = 19";
$result = mysql_query ($query);
$row = mysql_fetch_array ($result);
if ($row[0]==0) echo 'CUENTA SALDADA ';
elseif($row[0]<0) echo 'DEBE ' . abs($row[0]) . ' PESOS';
elseif($row[0]>0) echo 'TIENE EN SU HABER ' . abs($row[0]) . ' PESOS';
/////////////////////////////////////////////////////////////////-FIN-/////////////////////////////////////////////////////////////////
Valora esta pregunta


0