I receive an error in PHP when there is no ?cat in the address but if it is there the error goes away

I'm working on a dynamic page in PHP and I want the page to display something different depending on the variable passed in using the GET Method.  However, if I do not have anything being passed in the URL, than I get an error like this
http://www.mybiblegames.com/settings.php
But if I do have something, i do not get an error like this
http://www.mybiblegames.com/settings.php?cat
and this
http://www.mybiblegames.com/settings.php?cat=Billing

Attached is the PHP code in charge o this
<? 
///////////////////////////////// Begin Dynamic Content /////////////////////////////////
 
if($_GET['cat']){
	switch($_GET['cat']){
		case "Profile":
			?> <!-- Profile Content -->
			
			This page will allow you to edit your profile.<br/>
			Things you will be able to edit include:<br/>
			Name, Location, Age, Favorite Bible Verse, Biography, Time Zone, Gender, Password, Website and Email.
			
			<?
			break;
		case "Billing":
			?> <!-- Billing Content -->
			
			From this page, the user can make a payment in order to renew their account.  They can also change their 'Billing Address' from here as well as their membership type.  They can choose to upgrade or downgrade their membership.  If they upgrade, accounts will be added, if downgraded, they choose.<br/><br/>
			
			<b>Membership Fee's</b><br/>
			<u>Single Member</u><br/>
			$4.95 a month or $50 a year<br/>
			<u>2 Members</u><br/>
			$8.77 a month or $85 a year<br/>
			<u>3 Members</u><br/>
			$12.95 a month or $130 a year<br/>
			<u>5 Members</u><br/>
			$19.95 a month or $200 a year<br/>
 
			
			<?
			break;
		case "Favorites":
			?> <!-- Favorites Content -->
			
			This page would show all the games which the user has set as their favorites.<br/><br/>
			On the pages which contain the flash games, the user's will be able to click a button that allows them to add that game as their favorite and those games will be displayed on both the 'Games' page and on the Index page (where the users are able to sort thru the games).<br/><br/>
			This page not only will allow the user to see what they have set as their favorite games, but it will also let them remove them.
			
			<?
			break;
		case "Friends":
			?> <!-- Friends Content -->
			
			This page would show all the people that the User has selected as 'Friends' from the site.<br/><br/>
			When someone goes to another person's profile, the user will be able to click a button to add that person as a 'Friend'.  On this page, it will show all the friends that the user has and also give them the ability to remove friends.
			
			<?
			break;
		
	}
} else {
	?> 
	Please click an item to the left to navigate thru the various settings.
	<?
}
 
 
///////////////////////////////// Ended Dynamic Content /////////////////////////////////
?>

Open in new window

davideo7Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

husker475Commented:
Change
if($_GET['cat']){

to

if(isset($_GET['cat'])){
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
psimationCommented:
that is not an "error", it's a NOTICE - turn off error_display, or only display errors and warnings.
0
hieloCommented:
change:
if($_GET['cat']){ 
to:
if( isset($_GET['cat'])  && !empty($_GET['cat']) ) {

Open in new window

0
davideo7Author Commented:
Thanks, that was the problem and I didn't even notice it!
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
PHP

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.