Your problem might be in the order that your visitor hits these pages. The login page, and the page immediately afterwards are both ASP-based, which is why you have an ASP session handled.
When you click the link to go to the upload music page, that's the first PHP page that your visitor's browser sees, and it's on the first visit to the page that the cookie is created. However, the cookie isn't sent back from the user's browser until he goes to the next page, and so PHP hasn't received any header information about the cookie.
When you revisit the page, the cookie already exists, and is sent to your server from the browser, which is why PHP can access the sessionid.
To get around this, you could try putting an empty page in between the 'Upload my Sample Audio MP3 files' link and the file management page afterwards. Redirect users to the file management page with a <META HTTP-EQUIV="Refresh".... -type HTML tag but set the cookie at this stage. That way, the session will be established and the cookie will exist by the time the users reaches the file management page.
Does that make sense?