Como guardar datos en MySQL con PHP sin repetir registros.

  • Autor Autor Angel Sanche
  • Fecha de inicio Fecha de inicio
Angel Sanche

Angel Sanche

Gamma
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola colegas, estoy haciendo una pequeña aplicación en PHP con la cual necesito guardar unos datos, pero estos se actualizan después de un tiempo y en vez de repetirlos deseo actualizarlos. Me explico un poco:

1.- La aplicación agarra un lote de URLs.
2.- A cada URL se le asigna un valor. (Ya tenemos dos campos: URL - VALOR).
3.- Gurda estos datos en una base de datos en MySQL.

... después de un tiempo, se repite el paso 1,2 y 3. Después de este tiempo entra otro lote de URLs, si son nuevos datos no hay problema, se agregan a la base de datos, el detalle es que existe la posibilidad de que salga una URL de un lote anterior, pero con un nuevo valor, deseo que en vez de guardar repetida esta URL con otro valor, se actualice con el valor nuevo.

Espero haberme explicado bien, muchas gracias por su tiempo.

Saludos!
 
usa un if,
$campourl = query de la base de datos seleccionando al valor del campo url
$url = url nueva recien insertada, para comparar
if ( $url != $campourl){
aqui tu funcion de insert
}

Para mi eso seria lo mas sencillo, no es algo fancy pero te saca del apuro, los maestros programadores deben de saber mas.
 
Seria algo asi.
Si la URL ya existe, solo modificas su campo Valor, con el nuevo dato. :encouragement:
 
Compara el valor que vas a introducir con la base de datos, si ya existe no lo guarda.

Un query + condicional :encouragement:
 
[MENTION=50608]Angel Sanche[/MENTION] usa un WHERE, si la url existe actualizas si no existe creas un nuevo registro! :encouragement:
 
Lo más fácil, rápido y óptimo es que en tu tabla establezcas el campo url como único. Para eso dentro de tu tabla en phpmyadmin vas a estructura y en el campo URL donde pone acción pichas en único.
Luego basta con que modifiques tu consulta usando la clausula on key update. Por ejemplo:
Insertar CODE, HTML o PHP:
INSERT INTO `tutabla` (url,valor) VALUES ('http://aperpen.com',3)
  ON DUPLICATE KEY UPDATE valor= VALUES(valor)
 
Lo más fácil, rápido y óptimo es que en tu tabla establezcas el campo url como único. Para eso dentro de tu tabla en phpmyadmin vas a estructura y en el campo URL donde pone acción pichas en único.
Luego basta con que modifiques tu consulta usando la clausula on key update. Por ejemplo:
Insertar CODE, HTML o PHP:
INSERT INTO `tutabla` (url,valor) VALUES ('http://aperpen.com',3)
  ON DUPLICATE KEY UPDATE valor= VALUES(valor)

Genial, esto me funciono muy bien. Gracias!
 
Atrás
Arriba