No scusa, c'è qualcosa che non va, tu hai una pagina che ti stampa tutti i dati di tutti gli iscritti e di fianco ad ogni riga hai il pulsante per modificare i dati di quella persona così
codice:
ID            NOME           COGNOME
1             mario               rossi                  MODIFICA
2             antonio           bianchi                MODIFICA
3             luigi                 verdi                  MODIFICA
Però i campi ID, NOME, COGNOME fanno parte di un form o sono solo stampati a video?
Da quello che leggo qui
Codice PHP:
echo "<tr><td>$str_id</td><td>$str_nome</td><td>$str_cognome</td><td>  $str_email</td><td>$str_citta</td><td> <a href=\"aggiorna.php?id=$str_id\">Modifica</a></td></tr>"
direi che sono solo stampati a video e quindi da questa pagina non puoi lanciare direttamente lo script di UPDATE dei dati sul db perchè cosa ci metti nell'UPDATE? come fai da questa pagina ad inserire i dati aggiornari? Quindi quello che ti stavo dicendo è: questa è la pagina che stampa a video i dati, clicchi su modifica, vai in un'altra pagina dove i medesimi dati (ma solo dell'utente corrispondente all'id del pulsante modifica che hai cliccato) vengono messi un un form e quindi ora puoi modificarli; in questa pagina avrai un altro pulsante MODIFICA e cliccando su di esso potrai finalmente fare un UPDATE!