1. Computer problem? Tech Support Guy is completely free -- paid for by advertisers and donations. Click here to join today! If you're new to Tech Support Guy, we highly recommend that you visit our Guide for New Members.

question about select tag in php

Discussion in 'Web Design & Development' started by sudhakararaog, Mar 31, 2008.

Thread Status:
Not open for further replies.
  1. sudhakararaog

    sudhakararaog Thread Starter

    Joined:
    Sep 6, 2007
    Messages:
    117
    i have two select tags as part of a registration form, city1 city2 where city1 has a list of regions and similar for city2

    there are different regions for city1 and city2 so instead of all the regions appearing one after the other i would like to create a blank option followed by the next set of regions for formatting purpose only.

    ex=
    <select name="city1">
    <option <?php if ($city1=="region1"){echo "SELECTED";}?> value="region1">Select region1</option>
    <option <?php if ($city1=="nameofregion1"){echo "SELECTED";}?> value="nameofregion1">nameofregion1</option>
    <option <?php if ($northisland=="0"){echo "SELECTED";}?> value="0"></option>
    <option <?php if ($city1=="nameofregion2"){echo "SELECTED";}?> value="nameofregion2">nameofregion2</option>
    <option <?php if ($northisland=="1"){echo "SELECTED";}?> value="1"></option>
    </select>


    <select name="city2">
    <option <?php if ($city2=="region2"){echo "SELECTED";}?> value="region2">Select region2</option>
    <option <?php if ($city2=="nameofregion1"){echo "SELECTED";}?> value="nameofregion1">nameofregion1</option>
    <option <?php if ($northisland=="2"){echo "SELECTED";}?> value="2"></option>
    <option <?php if ($city2=="nameofregion2"){echo "SELECTED";}?> value="nameofregion2">nameofregion2</option>
    <option <?php if ($northisland=="3"){echo "SELECTED";}?> value="3"></option>
    </select>


    from a php validation perspective if a user does not select any of the regions or both the regions i am displaying an error message asking them to either select 1 region from either city1 or city2

    as of now there is a blank option being displayed which is working fine, i am having an issue with the php validation.

    until i introduced value=0 my rules for validating the select tag were:

    1. user cannot leave both the select tags with the default option which is "Select region1" & "Select region2"
    2. user cannot select both the regions from city1 & city2 select tags

    the code of 2. is
    if(!($city1 == "region1") && !($city2 == "region2"))
    {
    $error.="Please select only 1 Region<br />";
    }


    now by introducing <option <?php if ($northisland=="0"){echo "SELECTED";}?> value="0"></option> there is a conflict with the above php validation code used in point 2.

    1.
    is it correct to use 1,2,3 as part of the following <option> tag or should i only use 0 everywhere
    <option <?php if ($northisland=="0"){echo "SELECTED";}?> value="0"></option>
    <option <?php if ($northisland=="1"){echo "SELECTED";}?> value="1"></option>

    2.
    how can i get around the conflict that is being created by introducing this value=0 with
    if(!($city1 == "region1") && !($city2 == "region2"))
    {
    $error.="Please select only 1 Region<br />";
    }
    as i need the above php code and i also need the blank space for formatting purpose

    please advice.

    thanks.
     
  2. awatson

    awatson

    Joined:
    Jan 29, 2008
    Messages:
    78
    I'm not sure I entirely followed, but I think you may want to use "empty()" to check required fields, rather than looking for a numeric 0.
     
  3. TheRobatron

    TheRobatron

    Joined:
    Oct 25, 2007
    Messages:
    551
    Are the $northisland options for formatting purposes? Because if they, I would do as awatson said and just put value="" - you can have the same value for more than one option. Then you can put if (!empty($variable)) { /*The input is valid*/ }.

    I got a bit confused but I hope that helps.
     
As Seen On
As Seen On...

Welcome to Tech Support Guy!

Are you looking for the solution to your computer problem? Join our site today to ask your question. This site is completely free -- paid for by advertisers and donations.

If you're not already familiar with forums, watch our Welcome Guide to get started.

Join over 733,556 other people just like you!

Loading...
Thread Status:
Not open for further replies.

Short URL to this thread: https://techguy.org/698837

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice