Foros del Web » Programando para Internet » PHP »

Variable vacia

Estas en el tema de Variable vacia en el foro de PHP en Foros del Web. Ben dia. tengo el sgt inconveniente. tengo una variable asi: $Observacion=''; a medida q avanza el programa esta variable puede tomar otros valores: ejemplo: Código ...
  #1 (permalink)  
Antiguo 11/09/2009, 14:03
 
Fecha de Ingreso: septiembre-2009
Mensajes: 8
Antigüedad: 14 años, 7 meses
Puntos: 0
Variable vacia

Ben dia. tengo el sgt inconveniente.
tengo una variable asi:
$Observacion='';

a medida q avanza el programa esta variable puede tomar otros valores:
ejemplo:

Código PHP:
if($fileRow[12] != $porcentajecomision){
          
$Observacion.="El porcentaje de interes no conincide con los parametros";
                     } 
Si la variable entra al IF me le cambia el valor a $Observacion si no me la deja vacia.
el problema esta en el momento de guardar en la BD, si no entra en ningun IF la BD me guarda comillas simples.('')
ya probe declarandola como NULL e igual me guarda las comillas
muchas gracias quien me pueda ayudar
la BD es Postgres
  #2 (permalink)  
Antiguo 11/09/2009, 14:04
Avatar de nonpublic  
Fecha de Ingreso: agosto-2009
Mensajes: 240
Antigüedad: 14 años, 8 meses
Puntos: 4
Respuesta: Variable vacia

Prueba con:
$Observacion="";

de todas formas revisa tu INSERT INTO o postealo para ayudarte
  #3 (permalink)  
Antiguo 11/09/2009, 14:10
 
Fecha de Ingreso: septiembre-2009
Mensajes: 8
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Variable vacia

$sql = "INSERT INTO fng.tblfacturacion VALUES(";
$sql .= "'".$periodo."',"; // fvcperiodo
$sql .= "(SELECT finidreserva FROM fng.tblreservacupo WHERE fvcgarantia = '". str_pad($fileRow[2], 10, "0", STR_PAD_LEFT)."'),"; // finidreserva
$sql .= "'".$fileRow[0]."',"; // fvcproyecto
$sql .= "'".$fileRow[1]."',"; // fvcposicion
$sql .= "'A',"; // fchverificacion
$sql .= "'". str_pad($fileRow[2], 10, "0", STR_PAD_LEFT). "',"; // fvcgarantia
$sql .= str_replace(",", "", $fileRow[10]) .","; // fmobasecalculo
$sql .= str_replace(",", "", $fileRow[12]) .","; // fflporcentaje
$sql .= str_replace(",", "", $fileRow[13]) .","; // fmovalorcomision
$sql .= str_replace(",", "", $fileRow[14]) .","; // fmovaloriva
$sql .= str_replace(",", "", $fileRow[15]) .","; // fmovalortotal
$sql .= "'".$_SESSION['susuario']."',"; // fvcusuario
$sql .= "NOW(),"; // fdtfechaingreso
$sql .= "'".$estado."',"; // fchestado
$sql .= "NULL,";
$sql .= "NULL,";
$sql .= "NULL,";
$sql .= "NULL,";
$sql .= str_replace(",", "", $fmovalorcredito) .","; ; //Valor credito en registro de garantia
$sql .= str_replace(",", "", $fflporcentajecomision) .","; //comision
$sql .= "$Observacion"; //obsevaciones
$sql .= ");";
  #4 (permalink)  
Antiguo 11/09/2009, 14:13
 
Fecha de Ingreso: septiembre-2009
Mensajes: 8
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Variable vacia

NONPUBLI, ya lo hice como me recomendaste y nada, me guarda igual
  #5 (permalink)  
Antiguo 11/09/2009, 14:13
Avatar de nonpublic  
Fecha de Ingreso: agosto-2009
Mensajes: 240
Antigüedad: 14 años, 8 meses
Puntos: 4
Respuesta: Variable vacia

prieba poniendo un echo a tus variables $Observacion y $sql y cheka el resultado

Cita:
echo $observacion."</br>";
echo $sql;
exit();
  #6 (permalink)  
Antiguo 11/09/2009, 14:19
 
Fecha de Ingreso: septiembre-2009
Mensajes: 8
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Variable vacia

hola PUBLIC, muestra esto

INTO fng.tblfacturacion VALUES('200909',(SELECT finidreserva FROM fng.tblreservacupo WHERE fvcgarantia = '0001058245'),'0100011433','002230','A','000105824 5',515857,2.65,13670,2187,15857,'DHERNANDEZ',NOW() ,'P',NULL,NULL,NULL,NULL,0,0,'');

osea q me manda las jodidas comillas
  #7 (permalink)  
Antiguo 11/09/2009, 14:21
 
Fecha de Ingreso: septiembre-2009
Mensajes: 8
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Variable vacia

lo resolvi asi, pues para salir del paso.

if($Observacion=='')
$sql .= "NULL"; //obsevaciones
else
$sql .= ".$Observacion.";

y funciono.

MUCHAS GRACIAS NONPUBLIC
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:38.