Data-entry forms make it easier and faster for individuals to enter data into a database. In this project, you will create a data-entry form.

Objectives
Create a data-entry form.
Kylie works at Fitness Works, a gym. The members’ information is stored in a database. When a new member signs up for the gym, the information is added to the database. Kylie would like to make it easier for the staff to input information about new members. Help her to create a data-entry form.

The fields should include: last name, first name, birthdate, date joined, membership level, address, phone number, and emergency contact.

1 answer

Creating a data-entry form for gym members is a great way to streamline the process of collecting and managing member information. Below is a simple outline of how you can create such a form, including HTML code and suggestions for style and usability.

Step 1: HTML Structure

Here's the HTML structure for the data-entry form:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Gym Membership Registration Form</title>
    <link rel="stylesheet" href="styles.css">  <!-- Link to CSS for styling -->
</head>
<body>
    <h1>Gym Membership Registration Form</h1>
    <form id="membership-form">
        <label for="lastName">Last Name:</label>
        <input type="text" id="lastName" name="lastName" required>

        <label for="firstName">First Name:</label>
        <input type="text" id="firstName" name="firstName" required>

        <label for="birthdate">Birthdate:</label>
        <input type="date" id="birthdate" name="birthdate" required>

        <label for="dateJoined">Date Joined:</label>
        <input type="date" id="dateJoined" name="dateJoined" required>

        <label for="membershipLevel">Membership Level:</label>
        <select id="membershipLevel" name="membershipLevel" required>
            <option value="">Select Membership Level</option>
            <option value="basic">Basic</option>
            <option value="premium">Premium</option>
            <option value="vip">VIP</option>
        </select>

        <label for="address">Address:</label>
        <textarea id="address" name="address" required></textarea>

        <label for="phoneNumber">Phone Number:</label>
        <input type="tel" id="phoneNumber" name="phoneNumber" required>
        
        <label for="emergencyContact">Emergency Contact:</label>
        <input type="text" id="emergencyContact" name="emergencyContact" required>

        <button type="submit">Submit</button>
    </form>

    <script src="script.js"></script>  <!-- Link to JavaScript for form handling -->
</body>
</html>

Step 2: CSS for Styling

You can add some basic CSS to make your form visually appealing.

/* styles.css */
body {
    font-family: Arial, sans-serif;
    margin: 20px;
}

h1 {
    text-align: center;
}

form {
    max-width: 400px;
    margin: auto;
    padding: 20px;
    border: 1px solid #ccc;
    border-radius: 5px;
}

label {
    display: block;
    margin-bottom: 8px;
}

input[type="text"],
input[type="date"],
input[type="tel"],
textarea,
select {
    width: 100%;
    padding: 8px;
    margin-bottom: 20px;
    border: 1px solid #ccc;
    border-radius: 4px;
}

button {
    background-color: #5cb85c;
    color: white;
    border: none;
    padding: 10px;
    border-radius: 4px;
    cursor: pointer;
}

button:hover {
    background-color: #4cae4c;
}

Step 3: JavaScript (Optional)

You may want to handle form submission using JavaScript to prevent default submission and to log the data to the console or send it to a server.

// script.js
document.getElementById('membership-form').addEventListener('submit', function(event) {
    event.preventDefault(); // Prevent the form from actually submitting

    const formData = {
        lastName: document.getElementById('lastName').value,
        firstName: document.getElementById('firstName').value,
        birthdate: document.getElementById('birthdate').value,
        dateJoined: document.getElementById('dateJoined').value,
        membershipLevel: document.getElementById('membershipLevel').value,
        address: document.getElementById('address').value,
        phoneNumber: document.getElementById('phoneNumber').value,
        emergencyContact: document.getElementById('emergencyContact').value
    };

    console.log('Form Data Submitted:', formData);

    // Here you could also send the data to a server using fetch or XMLHttpRequest
    // fetch('your-api-endpoint', { method: 'POST', body: JSON.stringify(formData) })
});

Conclusion

The above code provides a basic structure for a data-entry form to collect members’ information at a gym. Feel free to expand on this idea by adding validation, improving user experience, and integrating it with a backend database using technologies like PHP, Node.js, Python, or any other server-side language.