Ya intentaste en el update en lugar de:
Código PHP:
$sql="UPDATE usuario SET nombre='".$_POST[nombre]."', apellido='".$_POST[apellido]."', telefono='".$telefono."', dni='".$_POST[dni]."', rol='".$_POST[rol]."', mail='".$_POST[Email]."',ciudad='".$_POST[ciudad]."',pais='".$_POST[pais]."', fecha_notif='$now' WHERE usuario= '".$_POST['usuario']."'";
hacer:
Código PHP:
$sql="UPDATE usuario SET nombre='".$_POST['nombre']."', apellido='".$_POST['apellido']."', telefono='".$telefono."', dni='".$_POST['dni']."', rol='".$_POST['rol']."', mail='".$_POST['Email']."',ciudad='".$_POST['ciudad']."',pais='".$_POST['pais']."', fecha_notif='$now' WHERE usuario= '".$_POST['usuario']."'";
O sea encerrar el campo a recibir con comilals simples ('), y debes fijarte que los nombres de los campos de tu formualrio:
Código PHP:
<input type="text"[B] name="userna"[/B]>
deben de coincidir con los que recibas en tu script del update:
Código PHP:
$_POST['userna']
Espero me haya explicado