The setting in PHP's config that's giving you grief is the error reporting level. Don't change it, because it's helping you become a better programmer by being suitably paranoid (you're coding for the Web, and there are a lot of weird people out there).
It's giving you notice that you're using the value of $SESSION['a_items'] when $SESSION['a_items'] doesn't have a value. PHP will go ahead, but it can be risky in the real world. The general principle in this case: never use a variable without first making sure it's got a value.
Just check to see if $SESSION['a_items'] etc. are set before using them:
if(isset($_SESSION['a_items']))
$item = $_SESSION['a_items'];
Your three lines could become
session_start();
if(isset($_SESSION['a_items']['greg']))
$item = $_SESSION['a_items']['greg'];