a little help with this

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
User avatar
s.dot
Tranquility In Moderation
Posts: 5001
Joined: Sun Feb 06, 2005 7:18 pm
Location: Indiana

a little help with this

Post by s.dot »

I want to select a form element based on two criteria

1) if its set in $_GET, then check it
2) if its not set in get, but set in a cookie, check it
3) if neither is set, check the default (choice 3)

It seems to always be reading from the cookie

Code: Select all

<input type="radio" name="gender" value="1" <?php
if(isset($_GET['gender']) && ($_GET['gender'] == 1)){
	echo "checked";
} ELSE {
	if((isset($cookie_data['gender'])) && ($cookie_data['gender'] == 1)){
		echo "checked";
	}
}
?>> Males<br />


<input type="radio" name="gender" value="2" <?php
if(isset($_GET['gender']) && ($_GET['gender'] == 2)){
	echo "checked";
} ELSE {
	if((isset($cookie_data['gender'])) && ($cookie_data['gender'] == 2)){
		echo "checked";
	}
}
?>> Females<br />


<input type="radio" name="gender" value="3" <?php
if(isset($_GET['gender']) && ($_GET['gender'] == 3)){
	echo "checked";
} ELSE {
	if(isset($cookie_data['gender']) && ($cookie_data['gender'] == 3)){
		echo "checked";
	} ELSE {
		if(!isset($_GET['gender']) && !isset($cookie_data['gender'])){
			echo "checked";
		}
	}
}
?>> Anyone
Set Search Time - A google chrome extension. When you search only results from the past year (or set time period) are displayed. Helps tremendously when using new technologies to avoid outdated results.
User avatar
Benjamin
Site Administrator
Posts: 6935
Joined: Sun May 19, 2002 10:24 pm

Post by Benjamin »

Code: Select all

function return_gender($gender) {
  switch ($gender) {
    case 1:
      $checked = "checked"; //male
      break;
    case 2:
      $checked = ""; //female
      break;
    default:
      $checked = ""; //?
      // ummmm
  }
  return $checked;
}

if (isset($_GET['gender'])) {
  echo return_gender($_GET['gender']);
} elseif (isset($cookie_data['gender']))  {
  echo return_gender($cookie_data['gender']);
} else {
  echo ""; // it's not set in either
}
Don't know if that will help or not. Hope it does.
Post Reply