se metti id > 0 ti aggiorna tutte le volte tutta la tabella.

dovresti mettere solo l'id del record interessato.

SELECT mostra_id, data_apertura FROM tab "

e poi metti nell'update:

WHERE mostra_id = '$row_data[mostra_id]';