l'id non dovresti settarlo....è una chiave che viene automaticamente aggiunta ad ogni record inserito sul DB è una chiave univoca....

il fatto che tu non riesca a "settare" l'id mi fa pensare che la tabella da te fatta è totalmente sprovvista di tale campo... e sta cosa non è bella...

Per quanto riguarda il codice ... serve ad evitare che "qualcuno" ...una volta individuata la pagina di delete possa digitare a manina l'url e iniziare a cancellarti le email semplicemente digitando degli ID a caso....è UNA QUESTIONE di sicurezza sul processo di delete....

Io ste "sicurezze" anche se in una amministrazione protetta da psw etc ... le metto sempre