I need to update field 3 of row 6 on the database
There is no field 3, and there is no row 6. Your database doesn't guarantee sort order of anything unless it's explicitly specified in a query on that data.
So you don't need to update "field 3", you need to update an identified field:
UPDATE SomeTable SET SomeField = 'some value'
Notice that the field is explicitly named, it's not updated by some cardinal position in relation to other fields. Similarly for rows, you need to identify the row(s) which should be updated:
UPDATE SomeTable SET SomeField = 'some value' WHERE SomeOtherField = 'some other value'
The row(s) is/are identified by some logical identifier, not by their cardinal position in relation to any other rows.
Without seeing any of your code or table structure it's hard to really be any more specific than that. But what this essentially means to your HTML/PHP is that when the form is posted to the server with values to update, it needs to include some way of identifying what needs to be updated. For example, one row in your HTML table might contain this:
<form action="somePage.php">
<input type="hidden" name="id" value="1" />
<input type="text" name="SomeField" value="some value" />
<input type="submit" value="Submit" />
</form>
Then in your server-side code you would construct your query to use the value of $_POST['SomeField'] in the UPDATE statement, and use the value of $_POST['id'] in the WHERE clause for that UPDATE statement.
primary keyin your MYSQL table ?"That makes sense since the current value of the table key is the last row that was read"- That statement doesn't make any sense to me. Can you show the actual code you're using and how you're trying to update the data? If each table row has its own independent HTML form and each form includes an identifier for the database row then you'd simply use that identifier when updating the table. I don't see how this could not work.