Foros del Web » Programando para Internet » PHP »

Update con una varible en el campo

Estas en el tema de Update con una varible en el campo en el foro de PHP en Foros del Web. buenos dias , es mi primera vez que pido ayuda por este medio segun lo que he visto es algo muy bueno, ojala que me ...
  #1 (permalink)  
Antiguo 10/09/2009, 08:38
 
Fecha de Ingreso: septiembre-2009
Mensajes: 2
Antigüedad: 14 años, 6 meses
Puntos: 0
Update con una varible en el campo

buenos dias , es mi primera vez que pido ayuda por este medio segun lo que he visto es algo muy bueno, ojala que me puedan ayudar porque soy muy novato en muchos temas de mysql y ya me salen canas por un problemita que para ustedes debe ser algo muy simple.

el problema es el siguiente estoy haciendo una update a una bd en mysql
pero quiero que el campo sea una variable que me llega por POST

este seria el codigo:

<?php
include("conexion.php");


$casa = 1;
$idlugares = $_POST['encuesta'];
$idlugares4 = $_POST['intento'];

$sql="Update encuesta SET
$idlugares4 = '".$casa."'
where factura_numero = '".$idlugares."'";


mysql_query($sql,$conex)or die(mysql_error());

echo "&ok=$intento";

?>


//// me sale este error

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= '1' where factura_numero = ''' at line 2


he intentado de muchas formas pero no puedo

cuando pongo asi la variable $idlugares4 = 'n4_intento'; si me funciona pero eso no es lo que yo nesesito

porque la ideas es que la variable llege por POST


:aplauso: agradesco mucho su ayuda y quiero dar las gracias al foro por compartir sus conocimientos es de mucha ayuda he interes y lo considero uno de los mejores foros :aplauso:
  #2 (permalink)  
Antiguo 10/09/2009, 08:47
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 1 mes
Puntos: 360
Respuesta: Update con una varible en el campo

Sospecho que el campo idlugares4 es de tipo numerico.
si es así, no debes poner comillas simples.

$sql="Update encuesta SET
$idlugares4 = ".$casa."
where factura_numero = '".$idlugares."'";


Igualmente si numero_factura es numérico, debes quitar las comillas.

Nos cuentas como te va y bienvenido al foro.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 10/09/2009, 08:51
 
Fecha de Ingreso: octubre-2008
Mensajes: 365
Antigüedad: 15 años, 5 meses
Puntos: 12
Respuesta: Update con una varible en el campo

Ponlo así

Código PHP:
$sql="Update encuesta SET $idlugares4 = $casa where factura_numero=$idlugares"
salu2
  #4 (permalink)  
Antiguo 10/09/2009, 18:05
 
Fecha de Ingreso: septiembre-2009
Mensajes: 2
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Update con una varible en el campo

muchas gracias por la ayuda y el tiempo prestado, les comento que estoy muy feliz de haber escrito mi problema aqui y espero devolver algun dia la ayuda ,

repecto al problema que presento no puede solucionarlo pero se que estoy por buen camino porque me toco leer un poco sobre varibles y tipos , yo se que aveces el tiempo no alcaza por eso me da pena pedir un poco mas de su tiempo para que me orienten en este tema .

este es el codigo corregido y explicando un poco el valor de las variables

<?php
include("conexion.php");

$casa = 1;

$idlugares4 = $_POST['intento']; // el valor de esta varible puede ser (n1_intento , n2_intento, n3_intento , n4_intento , n5_intento )

$idlugares= $_POST['encuesta']; // el valor de esta varible es un numero consecutivo (ej: 22222)





$sql="Update encuesta SET $idlugares4 = $casa where factura_numero=$idlugares";


mysql_query($sql,$conex)or die(mysql_error());

echo "&ok=$intento";

?>


el error que me aparece es el sigiente

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= 1 where factura_numero =' at line 1


segun lo que yo me pude darme cuenta despues muchos intentos

es que depronto el error esta en la forma como carga las variables $idlugares4 = $_POST['intento'];

esto es algo que yo me imagino pero que no estoy nada seguro

porque cuando coloco el codigo de esta forma funciona perfectamente

<?php
include("conexion.php");

$casa = 1;

$idlugares4 = 'n1_intento'; // el valor de esta varible puede ser (n1_intento , n2_intento, n3_intento , n4_intento , n5_intento )

$idlugares= '22222'; // el valor de esta varible es un numero consecutivo (ej: 22222)





$sql="Update encuesta SET $idlugares4 = $casa where factura_numero=$idlugares";


mysql_query($sql,$conex)or die(mysql_error());

echo "&ok=$intento";

?>


muchas gracias de nuevo
  #5 (permalink)  
Antiguo 11/09/2009, 06:26
 
Fecha de Ingreso: octubre-2008
Mensajes: 365
Antigüedad: 15 años, 5 meses
Puntos: 12
Respuesta: Update con una varible en el campo

me parece que cuando rescatas el valor mediante post no lo agarra ($idlugares)... puede ser que el nombre de variable este mal o al final no esté agarrando nada. El error que sale es como si faltara algo despues de where factura_numero = (Aquí la consulta lo está enviando como vacio).

Imprime que es exactamente lo que tu consulta está generando; quedaría así:

Código PHP:
$sql="Update encuesta SET $idlugares4 = $casa where factura_numero=$idlugares";

echo 
$sql;   // postea lo que te retorna esto


mysql_query($sql,$conex)or die(mysql_error()); 
Salu2
  #6 (permalink)  
Antiguo 11/09/2009, 10:55
 
Fecha de Ingreso: septiembre-2009
Mensajes: 12
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Update con una varible en el campo

yo creo q esta recibiendo la variable $_POST['encuesta'] vacia, deberias de probar imprimir la variable $_POST['encuesta'] con un echo a ver si estas recibiendo algun valor.

<? echo ($_POST['encuesta'];?>
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 14:14.