creo que el problema es esto
isset($_POST["usuario"]), no existe usuario, es usuarioE.
te dejo el código un poco optimizado, esto te debe de dar el mismo resultado.
Código PHP:
$dbusername='root';
$dbuserpass='mysql';
$dbname='db';
//creamos el link de conexión
$con=mysql_connect ('localhost', 'root', 'mysql');
//seleccionamos la BD
mysql_select_db('db',$con) or die("No se puede conectar a la Base de Datos");
//averiguamos si todos los campos tienen información
if ( !empty($_POST["usuarioE"]) && !empty ($_POST["nnick"]) && !empty ($_POST["nnombre"]) && !empty ($_POST["napellido"]) && !empty ($_POST["nmail"])){
$usuario=$_POST['usuarioE'];
$nuevoUsuario=$_POST['nnick'];
$nuevoNombre=$_POST['nnombre'];
$nuevoApellido=$_POST['napellido'];
$nuevoMail=$_POST['nmail'];
mysql_query("UPDATE usuarios SET name=$nuevoNombre, lastname=$nuevoApellido, nick=$nuevoUsuario, email=$nuevoMail, WHERE username='$usuarioE'",$con);
echo "Los datos se han modificadoooooooooooooooooo";}
}
else{
header("Location: campoVacioNedit.php");
}
suerte y saludos.