Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/08/2003, 08:28
Menete
 
Fecha de Ingreso: julio-2003
Ubicación: Benilloba/Valencia
Mensajes: 69
Antigüedad: 20 años, 9 meses
Puntos: 0
Insert o Update???

Hola, mi duda es la siguiente. Yo tengo una base de datos y tengo unas paginas que la actualizan. Pues bien, según tenga unos campos o no los tenga quiero que haga un "INSERT..." o un "UPDATE...".
Esto dependeria de si en el mismo campo (en la misma fila) existe una zona=$zona y un anyo=$anyo. Si los DOS coinciden quiero que haga un Update, pero si no coinciden lo que quiero es que haga un Insert y inserte esa nueva fila en la que ya tendria la coincidencia de anyo=$anyo y zona=$zona.
Abajo esta ya el codigo hecho, solo falta saber como poner un IF (esto es lo que no se) para que se ejecute una cosa o la otra.
Un ejemplo de la BD seria:

anyo zona ....
2003 valencia blablabla
2003 madrid blablabla
2004 valencia blablabla

Pues segun el ejemplo, si en la pagina anterior escojo anyo=2003 y zona=valencia quiero que haga un Update. Pero si lo que escojo es anyo=2004 y zona=madrid, como este campo no existe quiero que haga un Insert.

Espero haberme explicado bien. Como lo puedo hacer?? Muchas gracias de antemano.

Esta es la pagina:

<?
//conecto con la base de datos y devuelvo la conexion a $link
include("conex.php");
$link=Conectarse();

//creo la sentencia y la ejecuto


//INSERT

$con_line="Insert Into BD ( anyo, zona, mprecios, mcostes, mnuevos, mnuevoscanales, mfusiones, madquisiciones, mconsecuencias, mtendencias )
Values ( '$anyo', '$zona', '$precios', '$mcostes', '$nuevos', '$cana', '$fusi', '$adqui', '$conse', '$ten')";
$res_line=mysql_query($con_line,$link);


//SELECT

$a_precios = "Update BD Set mprecios ='$precios' Where ((anyo='$anyo') AND (zona='$zona'))";
mysql_query($a_precios,$link);

$a_costes = "Update BD Set mcostes ='$costes' Where ((anyo='$anyo') AND (zona='$zona'))";
mysql_query($a_costes,$link);

$a_nuevos = "Update BD Set mnuevos ='$nuevos' Where ((anyo='$anyo') AND (zona='$zona'))";
mysql_query($a_nuevos,$link);

$a_cana = "Update BD Set mnuevoscanales ='$cana' Where ((anyo='$anyo') AND (zona='$zona'))";
mysql_query($a_cana,$link);

$a_fusi = "Update BD Set mfusiones ='$fusi' Where ((anyo='$anyo') AND (zona='$zona'))";
mysql_query($a_fusi,$link);

$a_adqui = "Update BD Set madquisiciones ='$adqui' Where ((anyo='$anyo') AND (zona='$zona'))";
mysql_query($a_adqui,$link);

$a_conse = "Update BD Set mconsecuencias ='$conse' Where ((anyo='$anyo') AND (zona='$zona'))";
mysql_query($a_conse,$link);

$a_ten = "Update BD Set mtendencias ='$ten' Where ((anyo='$anyo') AND (zona='$zona'))";
mysql_query($a_ten,$link);

header("Location: mercado.php");
exit;
?>