Aceito e não descarto nenhuma sugestão, mas uso o mesmo script para inserir, mostrar, e alterar dados. Super-simplificado, seria:
if ((isset $_POST[submit] or $_POST[submit_edit]))
$myvar =$_POST[myvar]
$query insert ou update
<input type="submit" name=submit ou submit_edit>
Precisaria uma saída no insert, e mais duas, com verificação no update, pois pode ser gravado, mas não pode ser gravação dupla. Muito complicado deixar sair depois do } dos ifs. Só sobraria um header para outro lugar com msg de erro, o que parece meio desagradável.