kingkhan Posted May 24, 2012 Share Posted May 24, 2012 Hello everyone, Im really weak at coding in PHP and have come across a problem..here goes I have a drinks website, the startup page is a php page which enables users to choose country and year of birth, which is coded so that if the users year of birth is equal to 18 or over then upon submitting enables them to view the full website...otherwise produces a page with drinksaware links and tells them that they are too young to view the website..(the website wants to be responsible,therefore this method is being undertaken.) at the moment everything works as it should, however i have come across the obvious problem of age limits in certain countries i.e. 21 years in states, 19 in canada etc.. how can i get the code to accept 18 or over in UK, but only accept 21 or over in states and 19 or over in Canada? have no idea how to do this!! please can somebody help me..... heres is the code i am using for the php part if(isset($_POST['submit'])) { $day = $_POST['day']; $month = $_POST['month']; $year = $_POST['year']; $agelimit = $_POST['country']; $birthday = mktime(0,0,0,$month,$day,$year); $difference = time() - $birthday; $age = floor ($difference / 31556926); if($age >= 18) { $_SESSION['over18'] = 1; header("location: index.html"); } else { $_SESSION['under18'] = 0; header("location: leave.php"); } } ?> here is the code i am using for the form <form id="verification" action="index.php" method="post"> <table width="300" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td height="100"></td> </tr> </table> <table width="161" border="0" cellspacing="0" cellpadding="0" align="center" height="203"> <tr> <td><img src="images/logo.png" width="161" height="163" /></td> </tr> </table> <table width="500" border="0" cellspacing="0" cellpadding="0" align="center" height="100"> <tr> <td align="center" style="color:#9A9A9A; font-size:14px;">One of our key missions is to ensure that our drinks are enjoyed responsibly. We must confirm that you are of legal drinking age in your country before welcoming you to LF Brut. If there is no legal age for consuming alcohol in your country, you must be over 21.</td> </tr> </table> <table width="350" border="0" cellspacing="15" cellpadding="0" align="center"> <tr> <td width="300" align="right" style="color:#9A9A9A; text-transform:uppercase; font-size:12px;"><label class="listLabel" for="country"><strong>Country</strong></label></td> <td width="50"> <div class="styled-select"> <select id="country" name="country" class="select"> <optgroup label="RECENT"> <option value="1">Australia</option> <option value="3">Belgium</option> <option value="4">Brazil</option> <option value="6">China</option> <option value="9">France</option> <option value="10">Germany</option> <option value="15">Ireland</option> <option value="17">Italy</option> <option value="18">Japan</option> <option value="20">Mexico</option> <option value="30">Spain</option> <option selected="selected" value="34">United Kingdom</option> <option value="35">United States</option> </optgroup> <optgroup label="ALL COUNTRIES"> <option value="1">Australia</option> <option value="2">Austria</option> <option value="3">Belgium</option> <option value="4">Brazil</option> <option value="5">Canada</option> <option value="6">China</option> <option value="7">Denmark</option> <option value="8">Finland</option> <option value="9">France</option> <option value="10">Germany</option> <option value="11">Greece</option> <option value="12">Hungary</option> <option value="13">India</option> <option value="14">Indonesia</option> <option value="15">Ireland</option> <option value="16">Israel</option> <option value="17">Italy</option> <option value="18">Japan</option> <option value="19">Malaysia</option> <option value="20">Mexico</option> <option value="21">Netherlands</option> <option value="22">New Zealand</option> <option value="23">Nigeria</option> <option value="24">Norway</option> <option value="36">Other countries</option> <option value="25">Poland</option> <option value="26">Portugal</option> <option value="27">Russia</option> <option value="28">Singapore</option> <option value="29">South Africa</option> <option value="30">Spain</option> <option value="31">Sweden</option> <option value="32">Switzerland</option> <option value="33">United Arab Emirates</option> <option selected="selected" value="34">United Kingdom</option> <option value="35">United States</option> </optgroup> </select></div> </td> </tr> <tr> <td width="300" align="right" style="color:#9A9A9A; text-transform:uppercase; font-size:12px;"><label class="listLabel" for="birthdate"><strong>Date of birth</strong></label></td> <td width="50"> <select id="year" name="year"> <option value="2004">2004</option> <option value="2003">2003</option> <option value="2002">2002</option> <option value="2001">2001</option> <option value="2000">2000</option> <option value="1999">1999</option> <option value="1998">1998</option> <option value="1997">1997</option> <option value="1996">1996</option> <option value="1995">1995</option> <option value="1994">1994</option> <option value="1993">1993</option> <option value="1992">1992</option> <option value="1991">1991</option> <option value="1990">1990</option> <option value="1989">1989</option> <option value="1988">1988</option> <option value="1987">1987</option> <option value="1986">1986</option> <option value="1985">1985</option> <option selected="selected" value="1984">1984</option> <option value="1983">1983</option> <option value="1982">1982</option> <option value="1981">1981</option> <option value="1980">1980</option> <option value="1979">1979</option> <option value="1978">1978</option> <option value="1977">1977</option> <option value="1976">1976</option> <option value="1975">1975</option> <option value="1974">1974</option> <option value="1973">1973</option> <option value="1972">1972</option> <option value="1971">1971</option> <option value="1970">1970</option> <option value="1969">1969</option> <option value="1968">1968</option> <option value="1967">1967</option> <option value="1966">1966</option> <option value="1965">1965</option> <option value="1964">1964</option> <option value="1963">1963</option> <option value="1962">1962</option> <option value="1961">1961</option> <option value="1960">1960</option> <option value="1959">1959</option> <option value="1958">1958</option> <option value="1957">1957</option> <option value="1956">1956</option> <option value="1955">1955</option> <option value="1954">1954</option> <option value="1953">1953</option> <option value="1952">1952</option> <option value="1951">1951</option> <option value="1950">1950</option> <option value="1949">1949</option> <option value="1948">1948</option> <option value="1947">1947</option> <option value="1946">1946</option> <option value="1945">1945</option> <option value="1944">1944</option> <option value="1943">1943</option> <option value="1942">1942</option> <option value="1941">1941</option> <option value="1940">1940</option> <option value="1939">1939</option> <option value="1938">1938</option> <option value="1937">1937</option> <option value="1936">1936</option> <option value="1935">1935</option> <option value="1934">1934</option> <option value="1933">1933</option> <option value="1932">1932</option> <option value="1931">1931</option> <option value="1930">1930</option> <option value="1929">1929</option> <option value="1928">1928</option> <option value="1927">1927</option> <option value="1926">1926</option> <option value="1925">1925</option> <option value="1924">1924</option> <option value="1923">1923</option> <option value="1922">1922</option> <option value="1921">1921</option> <option value="1920">1920</option> <option value="1919">1919</option> <option value="1918">1918</option> <option value="1917">1917</option> <option value="1916">1916</option> <option value="1915">1915</option> <option value="1914">1914</option> <option value="1913">1913</option> <option value="1912">1912</option> <option value="1911">1911</option> <option value="1910">1910</option> <option value="1909">1909</option> <option value="1908">1908</option> <option value="1907">1907</option> <option value="1906">1906</option> <option value="1905">1905</option> <option value="1904">1904</option> <option value="1903">1903</option> <option value="1902">1902</option> <option value="1901">1901</option> <option value="1900">1900</option> <option value="1899">1899</option> <option value="1898">1898</option> <option value="1897">1897</option> <option value="1896">1896</option> <option value="1895">1895</option> <option value="1894">1894</option> </select></td> </tr> <tr> <td colspan="2" align="center"> <button name="submit" id="submit" style="background-image:url(images/enter.png); background-color:transparent; border:none; width:48px; height:15px; cursor:pointer;"></button> <input type="hidden" value="01" name="day" id="day" /> <input type="hidden" value="01" name="month" id="month"/> </td> </tr> <tr> <td height="80"></td> <td height="80"></td> </tr> </table> <table width="500" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td align="center" style="font-size:12px; color:#5A5A5A;">DRINK RESPONSIBLY. We support the responsible consumption of wines and spirits, through LF Brut, member of the European Forum for Responsible Drinking (<a href="http://www.efrd.org" target="_blank">www.efrd.org</a>) and DISCUS (<a href="http://www.discus.org" target="_blank">www.discus.org</a>), CEEV (<a href="http://www.wineinmoderation.eu" target="_blank">www.wineinmoderation.eu</a>) and Entreprise et Prévention (<a href="http://www.soifdevivre.com" target="_blank">www.soifdevivre.com</a>).</td> </tr> </table> <table width="500" border="0" cellspacing="0" cellpadding="0" align="center" height="50"> <tr> <td align="center" style="font-size:12px; color:#9A9A9A;">By entering this site you acknowledge that you accept its terms and conditions of use THE ABUSE OF ALCOHOL IS DANGEROUS FOR YOUR HEALTH</td> </tr> </table> </form> Quote Link to comment https://forums.phpfreaks.com/topic/263042-age-verification/ Share on other sites More sharing options...
cyberRobot Posted May 24, 2012 Share Posted May 24, 2012 First I would recommend assigning country to a variable named $country: <?php $country = $_POST['country']; ?> Then figure out the age limit based on the country value. For example <?php switch($country) { case 35: $agelimit=21; break; //United States case 5: $agelimit=18; break; //Canada ... } ?> Then just modify the age limit test: <?php if($age >= $agelimit) ?> Note: the switch() part of the above code would be dependent on how the age limit data stored. If it's stored in a database, you could run a query instead of using switch(). Quote Link to comment https://forums.phpfreaks.com/topic/263042-age-verification/#findComment-1348238 Share on other sites More sharing options...
kingkhan Posted May 24, 2012 Author Share Posted May 24, 2012 woweee, thankyou soo much.. can i do this with the switch code switch($country) { case 1,2,3,4: $agelimit=18; break; } Quote Link to comment https://forums.phpfreaks.com/topic/263042-age-verification/#findComment-1348245 Share on other sites More sharing options...
cyberRobot Posted May 24, 2012 Share Posted May 24, 2012 I'm pretty sure you need to use the "case" label before each case: <?php switch($country){ case 1: case 2: case 3: case 4: $agelimit=18; break; } ?> For more information, visit http://php.net/manual/en/control-structures.switch.php Quote Link to comment https://forums.phpfreaks.com/topic/263042-age-verification/#findComment-1348248 Share on other sites More sharing options...
kingkhan Posted May 24, 2012 Author Share Posted May 24, 2012 Thankyou very much for this Quote Link to comment https://forums.phpfreaks.com/topic/263042-age-verification/#findComment-1348250 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.