I use a postgres db, geoserver and openlayers to display a map with a wfs-t Layer that displays the geometry column of my table. Now I use control select to call a popup which contains a form to edit the other attribute-columns, e.g.:
//add Popup
var select = new OpenLayers.Control.SelectFeature(garden);
map.addControl(select);
select.activate();
garden.events.on({
featureselected: function(event) {
var feature = event.feature;
feature.popup = new OpenLayers.Popup.FramedCloud
("pop",
feature.geometry.getBounds().getCenterLonLat(),
null,
<form action="myphp.php" method="post">
<div class="label"> Crop:</div><input name="crop" type="text" value=+feature.attributes.crop+>
<input type="submit" name="write">
</form>);
map.addPopup(feature.popup);
},
In my php-script I wrote:
$crop= $_POST['crop'];
and:
$res = pg_query ("UPDATE $tabelle SET crop = '".pg_escape_string ($crop)."' WHERE id = 6;");
This works fine, editing a specific line, in this case the line where the "id=6".
My Question: What is the php-Code for sth. like "where the id= selected feature id". How can I replace the "WHERE id = 6"-part with a variable that says: always update the attributes of the selected polygon"?
Thanks for your help!