rendered paste body<?phpif (isset($_POST['stage']) && ('process' == $_POST['stage'])) { $errors = validate_form(); if (0 == count($errors)) { process_form(); } else { print_errors($errors); }}else { print_form();}function print_errors($errors) { echo "<p><ul>"; foreach ($errors as $error) { echo "<li>$error</li>"; } echo "</ul></p>"; print_form();}function process_form() { echo 'Hello ' . $_POST['first_name'] . '!';}function isUKPostcode($postcode) { $postcode = strtoupper(str_replace(chr(32), '', $postcode)); $postcode_regex = "^(GIR0AA)|(TDCU1ZZ)|((([A-PR-UWYZ][0-9][0-9]?)|(([A-PR-UWYZ][A-HK-Y][0-9][0-9]?)|" ."(([A-PR-UWYZ][0-9][A-HJKSTUW])|([A-PR-UWYZ][A-HK-Y][0-9][ABEHMNPRVWXY]))))[0-9][ABD-HJLNP-UW-Z]{2})$"; return (ereg($postcode_regex, $postcode)) ? $postcode : false;}function fileUploadOK($field) { $valid_types = array("image/gif", "image/jpeg"); $max_size = 80 * 1024; if ((in_array($_FILES[$field]["type"], $valid_types)) && ($_FILES[$field]["size"] <= $max_size)) { return true; } return false;}function myEmpty($var) { return ((!isset($var)) || (strlen($var) <= 0));} function validate_form() { $errors = array(); if (myEmpty($_POST['gender'])) { $errors['gender'] = "Please select your gender"; } if (myEmpty($_POST['full_name'])) { $errors['full_name'] = "Please enter your full name"; } else if (!ereg('^[a-zA-Z]\'-{2,75}$', $_POST['full_name'])) { $errors['full_name'] = 'Please enter your full name in the correct format'; } if (myEmpty($_POST['home_addres'])) { $errors['home_address'] = "Please enter your home address"; } else if (!ereg('^[0-9a-zA-Z]\'-{2,49}$', $_POST['home_address'])) { $errors['home_addres'] = "Please enter a valid home address"; } if (myEmpty($_POST['home_pcode'])) { $errors['home_pcode'] = "Please enter your home postcode"; } else if (!isUKPostcode($_POST['home_pcode'])) { $errors['home_pcode'] = "Please enter a valid home UK postcode"; } if (myEmpty($_POST['term_address'])) { $errors['term_address'] = "Please enter your term address"; } else if (!ereg('^[0-9a-zA-Z]\'-{2,49}$', $_POST['term_address'])) { $errors['term_address'] = "Please enter your a valid term address"; } if (myEmpty($_POST['term_pcode'])) { $errors['term_pcode'] = "Please enter your term postcode"; } else if (!isUKPostcode($_POST['term_pcode'])) { $errors['term_pcode'] = "Please enter a valid term-time UK postcode"; } if (myEmpty($_POST['home_phone'])) { $errors['home_phone'] = "Please enter a home telephone number"; } else if (!ereg('^(\+)[\s]*(.*)$', $_POST['home_phone'])) { $errors['home_phone'] = "Please enter a valid home telephone number"; } if (myEmpty($_POST['mob_phone'])) { $errors['mob_phone'] = "Please enter a mobile telephone number"; } else if (ereg('^\d{5} \d{6}$', $_POST['mob_phone'])) { $errors['mob_phone'] = "Please enter a valid mobile telephone number"; } if (myEmpty($_POST['email'])) { $errors['email'] = "Please enter a email address"; } else if (!ereg('^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.([a-zA-Z]{2,4})$', $_POST['email'])) { $errors['email'] = "Please enter a valid email address"; } if (myEmpty($_POST['country'])) { $errors['country'] = "Please select your nationality"; } if (myEmpty($_POST['dobDay'])) { $errors['dobDay'] = "Please select the day of your Date of Birth"; } if (myEmpty($_POST['dobMonth'])) { $errors['dobMonth'] = "Please select the month of your Date of Birth"; } if (myEmpty($_POST['dobYear']) || !ereg("[0-9]{4}", $_POST['dobYear'])) { $errors['dobYear'] = "Please enter the year of your Date of Birth"; } if (myEmpty($_POST['objective'])) { $errors['objective'] = "Please state your objective"; } else if (!ereg('^[a-zA-Z]$', $_POST['objective'])) { $errors['objective'] = "Your objective may only contain letters"; // ???? } if (myEmpty($_POST['preference'])) { $errors['preference'] = "Please state your preference"; } else if (!ereg('^[a-zA-Z]$', $_POST['preference'])) { $errors['preference'] = "Your preference may only contain letters"; // ???? } if (myEmpty($_POST['skills'])) { $errors['skills'] = "Please state your skills"; } else if (!ereg('^[a-zA-Z]$', $_POST['skills'])) { $errors['skills'] = "Your skills may only contain letters"; // ???? } if (!myEmpty($_POST['photograph']) && fileUploadOK("photograph", $_POST['photograph'])) { $errors ['photograph']= "<p>Please upload a valid photograph: " . $_FILES["file"]["error"] . "</p>"; } return $errors;}function print_form() { $days = '<option value="0" selected="selected">--Day--</option>'; for ($x = 1; $x <= 31; $x++) { $days .= "<option value=\"$x\">$x</option>"; } $months = '<option value="0" selected="selected">--Month--</option>'; for ($x = 1; $x <= 12; $x++) { $months .= "<option value=\"$x\">" . date("F", mktime(0, 0, 0, $x)) . "</option>"; } $current_year = date('Y'); $min_age = 5; $max_age = 99; $y = $current_year - $min_age; $years = "<option value=\"$yr\" selected=\"selected\">$y</option>"; for ($x = $y; $x >= ($current_year - $max_age); $x--) { $years .= "<option value=\"$x\">$x</option>"; }printf('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>Erasmus CV Generator</title><!-- link rel="stylesheet" type="text/css" href="template_css.css" /> --></head><body><h1>Erasmus CV Generator</h1><hr><form method="post" action="%s"><table border="0"> <tr><td>Gender:</td> <td><select name="gender"> <option value="">--Please Select--</option> <option value="m">Male</option> <option value="f">Female</option></select></td></tr> <tr><td>Full Name:</td> <td><input type="text" name="full_name" size="30" maxlength="75"> <input type="hidden" name="stage" value="process"></td></tr> <tr><td>Course:</td> <td><select name="pathway"> <option value="">--Please Select--</option> <option value="ceng">Computer Engineering</option> <option value="cnmd">Computer Network Management & Design</option> <option value="it">Internet Technology</option></select></td></tr> <tr><td valign="top">Home Address: </td> <td><input type="text" name="home_address[1]" size="30" maxlength="50"></td></tr> <tr><td> </td> <td><input type="text" name="home_address[2]" size="30" maxlength="50"></td></tr> <tr><td> </td> <td><input type="text" name="home_address[3]" size="30" maxlength="50"></td></tr> <tr><td> </td> <td><input type="text" name="home_address[4]" size="30" maxlength="50"></td></tr> <tr><td>Postcode:</td> <td><input type="text" name="home_pcode" size="15" maxlength="15"></td></tr> <tr><td valign="top">Term Address: </td> <td><input type="text" name="term_address[1]" size="30" maxlength="30"></td></tr> <tr><td> </td> <td><input type="text" name="term_address[2]" size="30" maxlength="30"></td></tr> <tr><td> </td> <td><input type="text" name="term_address[3]" size="30" maxlength="30"></td></tr> <tr><td> </td> <td><input type="text" name="term_address[4]" size="30" maxlength="30"></td></tr> <tr><td>Postcode:</td> <td><input type="text" name="term_pcode" size="15" maxlength="15"></td></tr> <tr><td>Home Phone Number:</td> <td><input type="text" name="home_phone" size="30" maxlength="50"></td></tr> <tr><td>Mobile Phone Number:</td> <td><input type="text" name="mob_phone" size="30" maxlength="50"></td></tr> <tr><td >Email:</td> <td><input type="text" name="email" size="30" maxlength="80"></td></tr> <tr><td>Nationality:</td> <td><select name="country"> <option value="">--Please Select--</option> <option value="AF">AFGHANISTAN</option> <option value="AL">ALBANIA</option> <option value="DZ">ALGERIA</option> <option value="AS">AMERICAN SAMOA</option> <option value="AD">ANDORRA</option> <option value="AO">ANGOLA</option> <option value="AI">ANGUILLA</option> <option value="AQ">ANTARCTICA</option> <option value="AG">ANTIGUA AND BARBUDA</option> <option value="AR">ARGENTINA</option> <option value="AM">ARMENIA</option> <option value="AW">ARUBA</option> <option value="AU">AUSTRALIA</option> <option value="AT">AUSTRIA</option> <option value="AZ">AZERBAIJAN</option> <option value="BS">BAHAMAS</option> <option value="BH">BAHRAIN</option> <option value="BD">BANGLADESH</option> <option value="BB">BARBADOS</option> <option value="BY">BELARUS</option> <option value="BE">BELGIUM</option> <option value="BZ">BELIZE</option> <option value="BJ">BENIN</option> <option value="BM">BERMUDA</option> <option value="BT">BHUTAN</option> <option value="BO">BOLIVIA</option> <option value="BA">BOSNIA AND HERZEGOVINA</option> <option value="BW">BOTSWANA</option> <option value="BV">BOUVET ISLAND</option> <option value="BR">BRAZIL</option> <option value="IO">BRITISH INDIAN OCEAN TERRITORY</option> <option value="BN">BRUNEI DARUSSALAM</option> <option value="BG">BULGARIA</option> <option value="BF">BURKINA FASO</option> <option value="BI">BURUNDI</option> <option value="KH">CAMBODIA</option> <option value="CM">CAMEROON</option> <option value="CA">CANADA</option> <option value="CV">CAPE VERDE</option> <option value="KY">CAYMAN ISLANDS</option> <option value="CF">CENTRAL AFRICAN REPUBLIC</option> <option value="TD">CHAD</option> <option value="CL">CHILE</option> <option value="CN">CHINA</option> <option value="CX">CHRISTMAS ISLAND</option> <option value="CC">COCOS (KEELING) ISLANDS</option> <option value="CO">COLOMBIA</option> <option value="KM">COMOROS</option> <option value="CG">CONGO</option> <option value="CD">CONGO, THE DEMOCRATIC REPUBLIC OF THE</option> <option value="CK">COOK ISLANDS</option> <option value="CR">COSTA RICA</option> <option value="CI">COTE D IVOIRE</option> <option value="HR">CROATIA</option> <option value="CU">CUBA</option> <option value="CY">CYPRUS</option> <option value="CZ">CZECH REPUBLIC</option> <option value="DK">DENMARK</option> <option value="DJ">DJIBOUTI</option> <option value="DM">DOMINICA</option> <option value="DO">DOMINICAN REPUBLIC</option> <option value="EC">ECUADOR</option> <option value="EG">EGYPT</option> <option value="SV">EL SALVADOR</option> <option value="GQ">EQUATORIAL GUINEA</option> <option value="ER">ERITREA</option> <option value="EE">ESTONIA</option> <option value="ET">ETHIOPIA</option> <option value="FK">FALKLAND ISLANDS (MALVINAS)</option> <option value="FO">FAROE ISLANDS</option> <option value="FJ">FIJI</option> <option value="FI">FINLAND</option> <option value="FR">FRANCE</option> <option value="GF">FRENCH GUIANA</option> <option value="PF">FRENCH POLYNESIA</option> <option value="TF">FRENCH SOUTHERN TERRITORIES</option> <option value="GA">GABON</option> <option value="GM">GAMBIA</option> <option value="GE">GEORGIA</option> <option value="DE">GERMANY</option> <option value="GH">GHANA</option> <option value="GI">GIBRALTAR</option> <option value="GR">GREECE</option> <option value="GL">GREENLAND</option> <option value="GD">GRENADA</option> <option value="GP">GUADELOUPE</option> <option value="GU">GUAM</option> <option value="GT">GUATEMALA</option> <option value="GN">GUINEA</option> <option value="GW">GUINEA-BISSAU</option> <option value="GY">GUYANA</option> <option value="HT">HAITI</option> <option value="VA">HOLY SEE (VATICAN CITY STATE)</option> <option value="HN">HONDURAS</option> <option value="HK">HONG KONG</option> <option value="HU">HUNGARY</option> <option value="IS">ICELAND</option> <option value="IN">INDIA</option> <option value="ID">INDONESIA</option> <option value="IR">IRAN, ISLAMIC REPUBLIC OF</option> <option value="IQ">IRAQ</option> <option value="IE">IRELAND</option> <option value="IL">ISRAEL</option> <option value="IT">ITALY</option> <option value="JM">JAMAICA</option> <option value="JP">JAPAN</option> <option value="JO">JORDAN</option> <option value="KZ">KAZAKHSTAN</option> <option value="KE">KENYA</option> <option value="KI">KIRIBATI</option> <option value="KP">KOREA, DEMOCRATIC PEOPLES REPUBLIC OF</option> <option value="KR">KOREA, REPUBLIC OF</option> <option value="KW">KUWAIT</option> <option value="KG">KYRGYZSTAN</option> <option value="LA">LAO PEOPLES DEMOCRATIC REPUBLIC</option> <option value="LV">LATVIA</option> <option value="LB">LEBANON</option> <option value="LS">LESOTHO</option> <option value="LR">LIBERIA</option> <option value="LY">LIBYAN ARAB JAMAHIRIYA</option> <option value="LI">LIECHTENSTEIN</option> <option value="LT">LITHUANIA</option> <option value="LU">LUXEMBOURG</option> <option value="MO">MACAO</option> <option value="MK">MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF</option> <option value="MG">MADAGASCAR</option> <option value="MW">MALAWI</option> <option value="MY">MALAYSIA</option> <option value="MV">MALDIVES</option> <option value="ML">MALI</option> <option value="MT">MALTA</option> <option value="MH">MARSHALL ISLANDS</option> <option value="MQ">MARTINIQUE</option> <option value="MR">MAURITANIA</option> <option value="MU">MAURITIUS</option> <option value="MX">MEXICO</option> <option value="FM">MICRONESIA, FEDERATED STATES OF</option> <option value="MD">MOLDOVA, REPUBLIC OF</option> <option value="MC">MONACO</option> <option value="MN">MONGOLIA</option> <option value="MS">MONTSERRAT</option> <option value="MA">MOROCCO</option> <option value="MZ">MOZAMBIQUE</option> <option value="MM">MYANMAR</option> <option value="NA">NAMIBIA</option> <option value="NR">NAURU</option> <option value="NP">NEPAL</option> <option value="NL">NETHERLANDS</option> <option value="AN">NETHERLANDS ANTILLES</option> <option value="NC">NEW CALEDONIA</option> <option value="NZ">NEW ZEALAND</option> <option value="NI">NICARAGUA</option> <option value="NE">NIGER</option> <option value="NG">NIGERIA</option> <option value="NU">NIUE</option> <option value="NF">NORFOLK ISLAND</option> <option value="MP">NORTHERN MARIANA ISLANDS</option> <option value="NO">NORWAY</option> <option value="OM">OMAN</option> <option value="PK">PAKISTAN</option> <option value="PW">PALAU</option> <option value="PA">PANAMA</option> <option value="PG">PAPUA NEW GUINEA</option> <option value="PY">PARAGUAY</option> <option value="PE">PERU</option> <option value="PH">PHILIPPINES</option> <option value="PN">PITCAIRN</option> <option value="PL">POLAND</option> <option value="PT">PORTUGAL</option> <option value="PR">PUERTO RICO</option> <option value="QA">QATAR</option> <option value="RE">REUNION</option> <option value="RO">ROMANIA</option> <option value="RU">RUSSIAN FEDERATION</option> <option value="RW">RWANDA</option> <option value="SH">SAINT HELENA</option> <option value="KN">SAINT KITTS AND NEVIS</option> <option value="LC">SAINT LUCIA</option> <option value="PM">SAINT PIERRE AND MIQUELON</option> <option value="VC">SAINT VINCENT AND THE GRENADINES</option> <option value="WS">SAMOA</option> <option value="SM">SAN MARINO</option> <option value="ST">SAO TOME AND PRINCIPE</option> <option value="SA">SAUDI ARABIA</option> <option value="SN">SENEGAL</option> <option value="SC">SEYCHELLES</option> <option value="SL">SIERRA LEONE</option> <option value="SG">SINGAPORE</option> <option value="SK">SLOVAKIA</option> <option value="SI">SLOVENIA</option> <option value="SB">SOLOMON ISLANDS</option> <option value="SO">SOMALIA</option> <option value="ZA">SOUTH AFRICA</option> <option value="ES">SPAIN</option> <option value="LK">SRI LANKA</option> <option value="SD">SUDAN</option> <option value="SR">SURINAME</option> <option value="SJ">SVALBARD AND JAN MAYEN</option> <option value="SZ">SWAZILAND</option> <option value="SE">SWEDEN</option> <option value="CH">SWITZERLAND</option> <option value="SY">SYRIAN ARAB REPUBLIC</option> <option value="TW">TAIWAN, PROVINCE OF CHINA</option> <option value="TJ">TAJIKISTAN</option> <option value="TZ">TANZANIA, UNITED REPUBLIC OF</option> <option value="TH">THAILAND</option> <option value="TG">TOGO</option> <option value="TK">TOKELAU</option> <option value="TO">TONGA</option> <option value="TT">TRINIDAD AND TOBAGO</option> <option value="TN">TUNISIA</option> <option value="TR">TURKEY</option> <option value="TM">TURKMENISTAN</option> <option value="TC">TURKS AND CAICOS ISLANDS</option> <option value="TV">TUVALU</option> <option value="UG">UGANDA</option> <option value="UA">UKRAINE</option> <option value="AE">UNITED ARAB EMIRATES</option> <option value="GB" selected>UNITED KINGDOM</option> <option value="US">UNITED STATES</option> <option value="UY">URUGUAY</option> <option value="UZ">UZBEKISTAN</option> <option value="VU">VANUATU</option> <option value="VE">VENEZUELA</option> <option value="VN">VIET NAM</option> <option value="VG">VIRGIN ISLANDS, BRITISH</option> <option value="VI">VIRGIN ISLANDS, U.S.</option> <option value="WF">WALLIS AND FUTUNA</option> <option value="EH">WESTERN SAHARA</option> <option value="YE">YEMEN</option> <option value="ZM">ZAMBIA</option> <option value="ZW">ZIMBABWE</option></select></td></tr> <tr><td>Date of Birth:</td> <td><select name="dobDay"> %s </select> <select name="dobMonth"> %s </select> <select name="dobYear"> %s </select> <!----Year--<input type="text" name="dobYear" size="4" maxlength="4" /></td></tr>--> <tr><td valign="top">Objective: </td> <td><textarea cols="100" rows="6" name="objective"></textarea></td></tr> <tr><td valign="top">Placement Preference: </td> <td><textarea cols="100" rows="6" name="preference"></textarea></td></tr> <tr><td valign="top" >Transferable skills: </td> <td><textarea cols="100" rows="6" name="skills"></textarea></td></tr> <tr><td valign="top"><p>Please upload your photograph. The file must be gif/jpeg format and less than 80 KB in size.</p></td> <td>Select Picture: <input type="file" name="photograph" size="80"></td> <td><input type="hidden" name="MAX_FILE_SIZE" value="81920"></td></tr> <tr><td> </td></tr> <tr><td><input type="submit" value="Generate CV!"></td></tr> </table></form></body></html>', $_SERVER["PHP_SELF"], $days, $months, $years);}?>