Question

I build a check with an exceptionerror to let it know when there is no value selected. He shows the message, but he also says that there is no value selected (in a notice), how can I prevent that error? It's about the name-tag 'distance.

PHP

if(isset($_POST["btnCreateGroup"])){
        try {
        $group = new Group();
        $group->GroupDistance = mysql_real_escape_string($_POST["distance"]);
        $group->GroupName = mysql_real_escape_string($_POST["groupname"]);
        //$group->Groupduration = mysql_real_escape_string($_POST["name"]);
        $group->CreateGroup();

        } catch(exception $e) {
        $feedback = $e -> getMessage();
    }
}


public function __set($p_sProperty, $p_vValue)
        {
            switch($p_sProperty)
            {
                case "GroupName":
                if(!empty($p_vValue))
                {
                    $this->m_sGroupName = $p_vValue;
                }
                else
                {
                    throw new Exception("Ow! Give me a name to your group");
                }
                break;

                case "GroupDistance":
                if(!empty($p_vValue))
                {
                    $this->m_iGroupDistance = $p_vValue;
                }
                else
                {
                    throw new Exception("Ow! Give me a distance to run, please");
                }
                break;



            }
        }

HTML

<select name="distance">
                        <option selected="selected" disabled="disabled" value="none">Distance</option>
                        <option value="1000">1000 meter</option>
                        <option value="1500">1500 meter</option>
                        <option value="2000">2000 meter</option>
                        <option value="2500">2500 meter</option>
                    </select>
Was it helpful?

Solution

Just check to see if the value is set, if not, use a default value instead:

$distance  = (isset($_POST["distance"]))  ? $_POST["distance"]  : '';
$groupname = (isset($_POST["groupname"])) ? $_POST["groupname"] : '';
$name      = (isset($_POST["name"]))      ? $_POST["name"]      : '';

$group->GroupDistance = mysql_real_escape_string($distance);
$group->GroupName     = mysql_real_escape_string($groupname);
$group->Groupduration = mysql_real_escape_string($name);
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top