Or if you are adding those webforms into the FC attributes,
a more straight forward way could be to write a Python script. You can use an arcpy function to create the geometry,
and pass in the values as strings or longs into an InsertCursor. You could do that directly on the FC you want to updateThis makes me thinks that I am misunderstanding how the Python script is triggered. It's not my website calling the python script directly right? I'd have to go through some geoprocessing stuff before it gets to the script.
or you could persist the arcpy geometry into a feature and then use append or merge.I'm afraid you've lost me here. Persist arcpy geometry into a feature? Not sure I follow what that means...
If you use a FeatureService you can allow people to push features and attributes down into a FC as well as make updates. You can do the same with a geoprocessing service. A GP service is basically a tool which is one of: a system tool, a chain of tools in ModelBuilder, a Python script or some sort of function tool (.DLL).
Either the GP Service or FeatureService could be done... and they both have pros and cons. I'm not sure I'm in a position to lean you one way or another. (I'm biased towards GP because thats my focus area). I'd give a read about FeatureServices to see if they do what you're after. (This would mean either getting a Flex or Silverlight viewer, or building a page in Flex, JavaScript or Silverlight from the ground up)
If you want to go the GP way and already have a Python script that does some or all of this, you just need to turn it into a script tool. A good starting place is here. After you have a tool, you can eventually get that into a Geoprocessing Service. To consume the service you'd again need a client application (the same as the feature service). The pattern of "using" these services would be different, but the overall design and use of the webpage you make would be the same.
Cool. I think I mostly follow what you are saying here... How would I turn my python script tool into a geoprocessing service? Also, what would the client application be? I'm assuming the client application would be the webpage itself which would consume the geoprocessing service and pass the data as arguments somehow?