Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!doctype html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
- <meta http-equiv="X-UA-Compatible" content="ie=edge">
- <title>Document</title>
- <script src="jquery-3.1.1.min.js"></script>
- <script src="main.js"></script>
- </head>
- <body>
- <?php
- error_reporting(E_ALL & ~(E_NOTICE));
- $error = false;
- $errorMessages = [
- "firstName" => [],
- "lastName" => [],
- "companyName" => [],
- "phone" => [],
- "email" => []
- ];
- $successMessage = null;
- $driverLicenseLevel = null;
- if ($_POST["submit"]) {
- // Filtration of the data
- $firstName = trim($_POST["firstName"]);
- $lastName = trim($_POST["lastName"]);
- $email = trim($_POST["email"]);
- $birthday = trim($_POST["birthday"]);
- $companyName = trim($_POST["companyName"]);
- $endDate = trim($_POST["endDate"]);
- $startDate = trim($_POST["startDate"]);
- $phone = str_replace(" ", "", trim($_POST["phone"]));
- $gender = $_POST["gender"];
- $driverLicenseLevel = $_POST[$driverLicenseLevel];
- $nationality = $_POST["nationality"];
- $programmingLanguages = $_POST["programmingLanguages"];
- $firstNameLength = strlen($firstName);
- $lastNameLength = strlen($lastName);
- $companyNameLength = strlen($companyName);
- $levels = [
- "beginner",
- "middle",
- "senior",
- "team-leader"
- ];
- // Validation of the data
- if (!$firstName) {
- $error = true;
- $errorMessages["firstName"][] = "The first name cannot be empty";
- }
- if ($firstName < 2 || $firstName > 50) {
- $error = true;
- $errorMessages["firstName"][] = "The first name must be between 2 and 50 symbols";
- }
- if (!$lastName) {
- $error = true;
- $errorMessages["lastName"][] = "The last name cannot be empty";
- }
- if ($lastName < 2 || $lastName > 50) {
- $error = true;
- $errorMessages["lastName"][] = "The last name must be between 2 and 50 symbols";
- }
- $areProgrammingLanguagesValid = true;
- foreach ($programmingLanguages as $programmingLanguage) {
- $programmingLanguageLength = strlen($programmingLanguage["name"]);
- if ($programmingLanguageLength <= 2 || $programmingLanguageLength > 20 || !in_array($programmingLanguage["level"], $levels)) {
- $areProgrammingLanguagesValid = false;
- break;
- }
- }
- if ($areProgrammingLanguagesValid) {
- if (!$companyName) {
- $error = true;
- $errorMessages["companyName"][] = "The company name cannot be empty";
- }
- if ($companyName < 2 || $companyName > 50) {
- $error = true;
- $errorMessages["companyName"][] = "The company name must be between 2 and 50 symbols";
- }
- if (!is_numeric($phone) || !preg_match('/[\+-,""]/', $phone)) {
- $error = true;
- $errorMessages["$phone"][] = "Invalid phone number ";
- }
- if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
- $error = true;
- $errorMessages["email"][] = "Invalid email";
- }
- echo "<tabele border='1'>";
- echo "<tr>";
- echo "<th>";
- echo "Personal Information";
- echo "</th>";
- echo "</tr>";
- echo "<tr>";
- echo "<td>";
- echo "Last Name";
- echo "</td>";
- echo "<td>" . $firstName . "</td>";
- echo "</tr>";
- echo "<tr>";
- echo "<td>";
- echo "Last Name";
- echo "</td>";
- echo "<td>" . $lastName . "</td>";
- echo "</tr>";
- echo "<tr>";
- echo "<td>";
- echo "Email";
- echo "</td>";
- echo "<td>" . $email . "</td>";
- echo "</tr>";
- echo "<tr>";
- echo "<td>";
- echo "Phone Number";
- echo "</td>";
- echo "<td>" . $phone . "</td>";
- echo "</tr>";
- echo "<tr>";
- echo "<td>";
- echo "Gender";
- echo "</td>";
- echo "<td>" . $gender . "</td>";
- echo "</tr>";
- echo "<tr>";
- echo "<td>";
- echo "Birth Date";
- echo "</td>";
- echo "<td>" . $birthday . "</td>";
- echo "</tr>";
- echo "<tr>";
- echo "<td>";
- echo "Nationality";
- echo "</td>";
- echo "<td>" . $nationality . "</td>";
- echo "</tr>";
- echo "</table>";
- echo "<tabele border='1'>";
- echo "<tr>";
- echo "<th>";
- echo "Last Work Position";
- echo "</th>";
- echo "</tr>";
- echo "<tr>";
- echo "<td>";
- echo "Company Name";
- echo "</td>";
- echo "<td>" . $companyName . "</td>";
- echo "</tr>";
- echo "<tr>";
- echo "<td>";
- echo "From";
- echo "</td>";
- echo "<td>" . $startDate . "</td>";
- echo "</tr>";
- echo "<tr>";
- echo "<td>";
- echo "To";
- echo "</td>";
- echo "<td>" . $endDate . "</td>";
- echo "</tr>";
- echo "</table>";
- }
- }
- ?>
- <form action="cv.php" method="post">
- <fieldset>
- <legend>Personal Information:</legend>
- <input type="text" name="firstName" placeholder="First Name"><br>
- <input type="text" name="lastName" placeholder="Last Name"><br>
- <input type="email" name="email" placeholder="Email"><br>
- <input type="tel" name="phone" placeholder="Phone number"><br>
- <input type="radio" name="gender"
- <?= ($gender && $gender == "male") ? "checked='checked'" : null; ?> value="male"> Male
- <input type="radio" name="gender"
- <?= ($gender && $gender == "female") ? "checked='checked'" : null; ?> value="female"> Female
- <br>
- Birth Date: <br>
- <input type="number" name="birthday" placeholder="dd/mm/yyyy"><br>
- Nationality: <br>
- <select name="nationality">
- <option value="bulgarian" <?= ($nationality && $nationality == "bulgarian") ? "selected='selected'" : null; ?> >Bulgarian</option>
- <option value="german" <?= ($nationality && $nationality == "german") ? "selected='selected'" : null; ?> > German</option>
- <option value="american" <?= ($nationality && $nationality == "american") ? "selected='selected'" : null; ?> >American</option>
- <option value="russian" <?= ($nationality && $nationality == "russian") ? "selected='selected'" : null; ?> >Russian</option>
- </select>
- </fieldset>
- <fieldset>
- <legend>Last Work Position:</legend>
- <label for="company">Company Name</label>
- <input type="text" name="companyName" id="company"><br>
- <label for="startDate">From</label>
- <input type="number" name="startDate" id="startDate" placeholder="dd/mm/yyyy"><br>
- <label for="endDate">To</label>
- <input type="number" name="endDate" id="endDate" placeholder="dd/mm/yyyy"><br>
- </fieldset>
- <fieldset class="programming-languages">
- <legend>Computer Skills:</legend>
- <label for="programmingLanguage">Programming languages</label><br>
- <div class="programming-languages-fields">
- <div class="programming-languages-field">
- <input type="text" name="programmingLanguages[0][name]">
- <select name="programmingLanguages[0][level]">
- <?php foreach ($levels as $level): ?>
- <option value="<?= $level ?>"><?= ucfirst($level) ?></option>
- <?php endforeach; ?>
- </select>
- </div>
- </div>
- <br>
- <button type="button" class="remove-language">Remove language</button>
- <button type="button" class="add-language">Add language</button>
- </fieldset>
- <fieldset>
- <legend>Other Skills:</legend>
- <label for="language">Languages</label><br>
- <br>
- <button type="button" value="Remove language" class="remove-speaking-language">Remove language</button>
- <button type="button" value="Add language" class="add-speaking-language">Add Language</button>
- <p>Driver's License</p>
- <label><input type="checkbox" name="driverLicenseLevel"<?= ($driverLicenseLevel && $driverLicenseLevel == "B") ? "checked='checked'" : null; ?> value="B">B</label>
- <label>
- <input type="checkbox" name="driverLicenseLevel"<?= ($driverLicenseLevel && $driverLicenseLevel == "A") ? "checked='checked'" : null; ?> value="A">A</label>
- <label><input type="checkbox" name="driverLicenseLevel"<?= ($driverLicenseLevel && $driverLicenseLevel == "C") ? "checked='checked'" : null; ?> value="C">C</label>
- <br>
- <input name="submit" type="submit" value="Generate CV">
- </fieldset>
- </form>
- <div class="programming-languages-field-template" style="display: none;">
- <div class="programming-languages-field">
- <input type="text" name="programmingLanguages[{x}][name]">
- <select name="programmingLanguages[{x}][level]">
- <?php foreach ($levels as $level): ?>
- <option value="<?= $level ?>"><?= ucfirst($level) ?></option>
- <?php endforeach; ?>
- </select>
- </div>
- </div>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement