En un primer instante $row tiene el valor del primer registro q encuente en la consulta realizada (ya te comenté que mysql_fetch_xxxx al llamarse/ejecutarse obtiene el registro si lo puede obtener da TRUE y si no FALSE .. )
A su vez .. el = en PHP es asignación .. mientras q == es comparación (y el === es igual valor y tipo de variable) ...
En el While ($row= ... se está asigunado el valor de llamar a la funcion mysql_fetch_xxxx a $row .. $row debería devolver "Array" si hay un registro disponible .. y FALSE si llegó al final de la consulta el puntero. (esto es como los data_seek .. obtiene el "recor-set" y mueve puntero hacia adelante automatico .. no hay q desplazarlo a mano .. Por lo menos en Mysql)
El manual de PHP oficial está en
www.php.net/manual/en (la versión en ingles es la mas completa) .. Te recomiendo q si trabajas en windows te bajes la version CHM del manual (help de windows) ayuda mucho y es muyy util como buscador.
Por lo demas ..este foro PHP te habras dado cuenta q tiene unas FAQ's .. leelas .. en los primeros mensajes hay links hacia manuales, tutoriales de PHP y demas información útil.
Un saludo,