mejor usa este codigo que si lo he probado y funciona perfecto:
Código PHP:
Ver original//realizo la conexion
$dbConex=$seguridad;
//recibo las variables
$usuario = $_GET['nombre'];
$horas = $_GET['horas'];
//verifico que el usuario no este vacio
if($usuario == "") {
$msg = "";
}
else {
//si todo esta bien procedo con la inserción
//Insercion de datos con MYSQLi
$link = new MySQLi($hostname_seguridad, $username_seguridad, $password_seguridad, $database_seguridad);
$query = "INSERT INTO fecha (nombre,fecha) values ('$usuario','$horas') ON DUPLICATE KEY UPDATE fecha = '$horas'";
$result = $link->query($query);
}
if ($result)
$msg = 'Los datos han sido insertados en la base de datos';
else
$msg = '';
mysqli_close($link); // Cerramos la conexion con la base de datos
Como puedes ver alli estoy utilizando la funcion ON DUPLICATE KEY la cual verifica el campo que tengas como unico y si coincide con tu variable en este caso usuario entonces actualza la hora si no inserta el nuevo registro.