elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  [PHP+MYSQL] Sumar a una cifra mediante UPDATE, sin SELECT previo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [PHP+MYSQL] Sumar a una cifra mediante UPDATE, sin SELECT previo  (Leído 24,669 veces)
Servia


Desconectado Desconectado

Mensajes: 346


Ver Perfil
[PHP+MYSQL] Sumar a una cifra mediante UPDATE, sin SELECT previo
« en: 28 Julio 2011, 17:46 pm »

Buenas.

Tengo un script que recibe un número en una variable y este puede ser tanto positivo como negativo. El problema que tengo es al aplicarlo en una row de la db pues si resulta que tiene que restar 3, suma 2 :S
Código
  1. $num=-3;
  2.  
  3. $query='UPDATE members SET creditos=creditos+$num WHERE uid='$uid'';
  4. $result=mysql_query($query,$db);
  5.  

¿Por qué?


He probado a poner paréntesis, pero como si no estubieran.
Código
  1. $query='UPDATE members SET creditos=creditos+($num) WHERE uid='$uid'';
  2. $result=mysql_query($query,$db);


En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: [PHP+MYSQL] Sumar a una cifra mediante UPDATE, sin SELECT previo
« Respuesta #1 en: 28 Julio 2011, 18:21 pm »

Pues a mi me funciona correctamente mirad,
Ingreso el valor en la tabla,
Código
  1. mysql> INSERT INTO PoC VALUES(1);
  2. Query OK, 1 ROW affected (0.00 sec)
Modifico el valor y le sumo -2,
Código
  1. mysql> UPDATE PoC SET PoCField = PoCField + (-4);
  2. Query OK, 1 ROW affected (0.00 sec)
  3. ROWS matched: 1  Changed: 1  Warnings: 0
  4.  
El resultado inicial y final es,
Código
  1. mysql> SELECT * FROM PoC;
  2. +----------+----------+
  3. | PoCField | PoCField |
  4. +----------+----------+
  5. |       1  |     -3   |
  6. +----------+----------+
  7.  

Nota, intetadlo haciendolo así, ya que tienes un escape de comillas simples,
Código
  1. $sql = "UPDATE members SET creditos=creditos+$num WHERE uid='$uid'";


En línea

Te vendería mi talento por poder dormir tranquilo.
Servia


Desconectado Desconectado

Mensajes: 346


Ver Perfil
Re: [PHP+MYSQL] Sumar a una cifra mediante UPDATE, sin SELECT previo
« Respuesta #2 en: 28 Julio 2011, 18:44 pm »

Gracias por contestar.
Lo de las comillas simples ha sido porque las he puesto ahora en el uid corriendo xD

Pues no hay manera :S
No habrá alguna diferencia entre mysql en cmd y desde php?
En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.724


<3


Ver Perfil WWW
Re: [PHP+MYSQL] Sumar a una cifra mediante UPDATE, sin SELECT previo
« Respuesta #3 en: 29 Julio 2011, 00:53 am »

Porque mejor no printeas la consulta antes de ejecutarla, la analizas y luego la ejecutas en el motor de base de datos.
En línea

Te vendería mi talento por poder dormir tranquilo.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
SELECT junto con update sql injection
Nivel Web
wizache 2 6,501 Último mensaje 29 Diciembre 2007, 22:36 pm
por H3xCryp
Inyeccion SQL (mysql) UPDATE dentro de un SELECT « 1 2 »
Nivel Web
odeONeSs 14 19,962 Último mensaje 27 Febrero 2009, 17:40 pm
por OzX
Problema con Update y Select
Bases de Datos
ssccaann43 © 3 3,611 Último mensaje 22 Mayo 2010, 17:05 pm
por ^Tifa^
[Update] Select All Friends Script - Facebook
Scripting
[D4N93R] 0 3,725 Último mensaje 23 Abril 2011, 00:17 am
por [D4N93R]
Sumar las posiciones par de una cifra
Programación C/C++
ciquee 6 2,328 Último mensaje 31 Marzo 2019, 14:22 pm
por ciquee
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines