Although this was asked two years ago, I'd like to provide a more thorough answer to this question, as there are a lot of views on this topic and the technology in ArcGIS Online (AGOL) has not changed much in the last two years since the original post regarding Enabling Attachments for "Hosted" Feature Layers. Two of the options listed listed below will give you attachments in ArcGIS Online using Hosted Feature Layers. All of the options below assume you have an "Organizations Account" with ArcGIS Online and available credits.
If you upload your own shapefile (or a CSV) to AGOL, you will not be able to Enable Attachments once it is uploaded (aka Hosted) on AGOL. Although you will be able to enable editing on this Feature Layer, enabling attachments is not possible.
If you upload a FGDB with a feature class that has attachments already enabled (eg. you have a Relationship class and Table for the attachments already created in the FGDB), you can upload this to AGOL and attachments will be enabled in AGOL after you've enabled editing on the Feature Layer in AGOL. You'll need to ZIP the FGDB before uploading to AGOL.
The last option (that I am aware of), is to use the ESRI's ArcGIS Developers site and create a new layer with Feature Editing and Attachments enabled there. Although you have to create your schema from scratch using their web interface, this will allow you to create a hosted Feature Layer with Attachments enabled in ArcGIS Online.