Answering the first part:
$user = $facebook->getUser();
if (!$user) {
$url = $facebook->getLoginUrl(array(
'scope'=>'publish_stream,status_update',
'redirect_uri'=>'http://yourlink/'));
echo "<p>Redirecting to permission request...</p>";
echo "<script type=\"text/javascript\">top.location.href = '$url';</script>";
} else {
... your app.
}
You put the permissions in the scope element. The approval box you get will depend on whichever elements you put there. Only ask for permissions you actually need though.
--- EDIT ---
In response to your comments, you also need the following if you are uploading pics using the SDK:
$facebook->setFileUploadSupport(true);
You do that once you have authenticated.
You also need a few more permissions:
'scope'=> 'read_stream, publish_stream, photo_upload, user_photos, user_photo_video_tags'
You may not need all of those, depending on what you are trying to do, so once you get it working try removing the video portion for example.
I spent a while on this last year, you may find these posts useful:
http://facebookanswers.co.uk/?p=262
http://facebookanswers.co.uk/?p=322