La riga della query e' un casino, di sicuro in fondo c'e' un " (e un ; ) di troppo.

Comunque non ha senso scrivere righe cosi', lunghe e piene di concatenamenti con apertura e chiusura di apici e virgolette. Ci vuole estrema confidenza oppure si fa solo confusione.

Assegna delle variabili, non e' necessario eseguire i comandi inline.

Codice PHP:
$password md5($MD5_PREFIX.$NEWPASSWD);
$username addslashes($TPL_username); /* anche se mysql_real_escape_string() sarebbe meglio */
$query "UPDATE users 
          SET password = '
$password'
          WHERE nick = '
$username'"
Ok sono piu' righe ma guarda come e' piu' leggibile di:

Codice PHP:
$query "update users set password='".md5($MD5_PREFIX.$NEWPASSWD)."' WHERE nick=\"".AddSlashes($TPL_username)."\"";"; 
e come e' piu' facile individuare eventuali errori.