suponiendo que los campos y la tabla existan, aparenta estar bien.
Intenta:
Código PHP:
$link = mysql_connect($host,$user,$pass) or die('error al conectar con la base de datos.');
if ( mysql_select_db("basedatos",$link) ) {
$sSQL="Update tabla Set nombre='$nombre',ciudad='$ciudad' Where nombre='$nombre'";
$result=mysql_query($sSQL,$link) or die(mysql_error($link));
} else {
echo 'error al seleccionar la base de datos';
}
con eso debe ser suficiente para buscar el error....
saludos,