Foros del Web » Programando para Internet » PHP »

PHP OO if con condición si agrega o actualiza dependiendo si existe o no el valor

Estas en el tema de if con condición si agrega o actualiza dependiendo si existe o no el valor en el foro de PHP en Foros del Web. hola!! mi pregunta creo q es simple ya que ya tengo ksi todo solo me falta hacer el if u.u espero me puedan ayudar: @import ...
  #1 (permalink)  
Antiguo 16/04/2013, 18:38
 
Fecha de Ingreso: enero-2013
Mensajes: 68
Antigüedad: 11 años, 3 meses
Puntos: 0
Mensaje if con condición si agrega o actualiza dependiendo si existe o no el valor

hola!! mi pregunta creo q es simple ya que ya tengo ksi todo solo me falta hacer el if u.u espero me puedan ayudar:

Código PHP:
Ver original
  1. $nombre = mysqli_real_escape_string($link, $_POST['nombre']);
  2. $fabricante = mysqli_real_escape_string($link, $_POST['fabricante']);
  3. $mayorista =mysqli_real_escape_string($link,$_POST['mayorista']);
  4. $Comerciante = mysqli_real_escape_string($link, $_POST['Comerciante']);
  5. $total  = $mayorista + $fabricante + $comerciante;
  6. $totalArticulos = mysqli_real_escape_string($link, $_POST['totalArticulos']);

ahora ya que traigo todo los datos lo unico que necesito hacer es que si ya existe un valor en este caso que es nombre actualice el total de artiulos solamente sin que se repitan, ahora traigo los datos y por separado ejecutando uno de los 2 querys si hace lo que tiene que hacer o actualiza o agrega con el siguiente:

Código HTML:
Ver original
  1. $consulta = "UPDATE lista SET articulos = articulos + ".$totalArticulos." WHERE    
  2.                      descripcion = '".$nombre."'"; 
  3.  
  4.  
  5. $consulta = "INSERT INTO lista (descripcion,articulos)VALUES ('".$nombre."',
  6.                     ".$totalArticulos.") ";

el problema seria como meto el if para saber si agrega o no? espero me puedan ayudar n.n
  #2 (permalink)  
Antiguo 16/04/2013, 18:50
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: if con condición si agrega o actualiza dependiendo si existe o no el valor

Si la descripción es PRIMARY KEY o UNIQUE KEY puedes usar INSERT INTO... ON DUPLICATE KEY UPDATE para lo que necesitas.

Otra forma sería usar mysqli_affected_rows para saber si hubo alguna fila afectada por el UPDATE.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 17/04/2013, 10:25
 
Fecha de Ingreso: enero-2013
Mensajes: 68
Antigüedad: 11 años, 3 meses
Puntos: 0
Respuesta: if con condición si agrega o actualiza dependiendo si existe o no el valor

Cita:
Iniciado por David Ver Mensaje
Si la descripción es PRIMARY KEY o UNIQUE KEY puedes usar INSERT INTO... ON DUPLICATE KEY UPDATE para lo que necesitas.

Otra forma sería usar mysqli_affected_rows para saber si hubo alguna fila afectada por el UPDATE.
la vdd nunk eh ocupado el mysqli_affected_rows como seria?
  #4 (permalink)  
Antiguo 17/04/2013, 11:09
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: if con condición si agrega o actualiza dependiendo si existe o no el valor

Puedes revisar la documentación de la función:
http://php.net/mysqli_affected_rows

Saludos.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 17/04/2013, 11:44
Avatar de paginaswebs  
Fecha de Ingreso: febrero-2013
Mensajes: 73
Antigüedad: 11 años, 1 mes
Puntos: 3
Respuesta: if con condición si agrega o actualiza dependiendo si existe o no el valor

Mira esto como te comentan aca http://php.net/mysqli_affected_rows
  #6 (permalink)  
Antiguo 24/04/2013, 18:57
 
Fecha de Ingreso: marzo-2013
Ubicación: España
Mensajes: 42
Antigüedad: 11 años, 1 mes
Puntos: 4
Respuesta: if con condición si agrega o actualiza dependiendo si existe o no el valor

Tienes que contar si te devuelve alguna fila, si te devuelve actualizas, sino insertas, saludos!!

Etiquetas: condición, dependiendo, mysql, valor
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 07:21.