How to use PHP to develop simple recruitment information publishing and filtering functions

王林
Release: 2023-09-20 10:54:02
Original
817 people have browsed it

How to use PHP to develop simple recruitment information publishing and filtering functions

How to use PHP to develop simple recruitment information publishing and filtering functions

With the popularity of the Internet and people's demand for employment opportunities, recruitment websites are becoming more and more important. In this article, I will introduce you to how to use PHP to develop a simple website with job posting and filtering functions. We will start from creating the database, to designing the user interface, and finally writing PHP code to implement the functionality.

  1. Database Design
    In this application, we need to store data related to recruitment information. So we need to create a database to store this data. The following is a simple database design:
CREATE DATABASE recruitment;

USE recruitment;

CREATE TABLE jobs (
    id INT PRIMARY KEY AUTO_INCREMENT,
    title VARCHAR(255) NOT NULL,
    description TEXT NOT NULL,
    company VARCHAR(255) NOT NULL,
    location VARCHAR(255) NOT NULL,
    posted_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
Copy after login

In this database, we created a database named "recruitment" and created a "jobs" table in it to store job information. The table contains the job title, description, company name, location, and date posted.

  1. User Interface Design
    Next, we need to design the user interface so that users can post new recruitment information and filter positions based on some conditions. The following is a simple user interface design:
<!DOCTYPE html>
<html>
<head>
    <title>招聘信息发布和筛选</title>
</head>
<body>
    <h1>招聘信息发布和筛选</h1>
    
    <h2>发布新的招聘信息</h2>
    <form action="post_job.php" method="post">
        <label for="title">职位标题:</label>
        <input type="text" id="title" name="title" required><br><br>
        
        <label for="description">职位描述:</label><br>
        <textarea id="description" name="description" rows="5" cols="50" required></textarea><br><br>
        
        <label for="company">公司名称:</label>
        <input type="text" id="company" name="company" required><br><br>
        
        <label for="location">地点:</label>
        <input type="text" id="location" name="location" required><br><br>
        
        <input type="submit" value="发布招聘信息">
    </form>
    
    <h2>筛选职位信息</h2>
    <form action="filter_jobs.php" method="post">
        <label for="keyword">关键字:</label>
        <input type="text" id="keyword" name="keyword"><br><br>
        
        <label for="location">地点:</label>
        <input type="text" id="location" name="location"><br><br>
        
        <input type="submit" value="筛选职位">
    </form>
</body>
</html>
Copy after login

This user interface contains two forms, one for posting new recruitment information and the other for filtering job information. Users can enter job titles, descriptions, company names and locations to post new job postings, or enter keywords and locations to filter job postings.

  1. PHP code implementation
    Now let us write PHP code to implement these functions. Here is a simple code example:

post_job.php:

<?php
    $title = $_POST['title'];
    $description = $_POST['description'];
    $company = $_POST['company'];
    $location = $_POST['location'];
    
    // 连接到数据库
    $conn = new mysqli('localhost', 'root', 'password', 'recruitment');
    
    // 检查数据库连接是否成功
    if ($conn->connect_error) {
        die("数据库连接失败: " . $conn->connect_error);
    }
    
    // 插入新的招聘信息
    $sql = "INSERT INTO jobs (title, description, company, location) VALUES ('$title', '$description', '$company', '$location')";
    
    if ($conn->query($sql) === TRUE) {
        echo "招聘信息发布成功!";
    } else {
        echo "发布失败: " . $conn->error;
    }
    
    // 关闭数据库连接
    $conn->close();
?>
Copy after login

filter_jobs.php:

<?php
    $keyword = $_POST['keyword'];
    $location = $_POST['location'];
    
    // 连接到数据库
    $conn = new mysqli('localhost', 'root', 'password', 'recruitment');
    
    // 检查数据库连接是否成功
    if ($conn->connect_error) {
        die("数据库连接失败: " . $conn->connect_error);
    }
    
    // 根据关键字和地点筛选职位信息
    $sql = "SELECT * FROM jobs WHERE title LIKE '%$keyword%' AND location LIKE '%$location%'";
    $result = $conn->query($sql);
    
    if ($result->num_rows > 0) {
        // 输出查询结果
        while($row = $result->fetch_assoc()) {
            echo "职位标题: " . $row["title"]. "<br>职位描述: " . $row["description"]. "<br>公司名称: " . $row["company"]. "<br>地点: " . $row["location"]. "<br><br>";
        }
    } else {
        echo "没有找到符合条件的职位信息。";
    }
    
    // 关闭数据库连接
    $conn->close();
?>
Copy after login

In these codes, we first get the input from the user Get the data from the form and insert it into the database to post new job information. Then, the database is queried based on the keywords and locations entered by the user, and the query results are output to the user interface.

In summary, we have learned how to use PHP to develop a simple website with recruitment information publishing and filtering functions. By designing the database, user interface and writing PHP code, we are able to implement information publishing and filtering functions. Of course, this is just a starting point, you can extend and optimize this application according to your needs. Hope this article can be helpful to you!

The above is the detailed content of How to use PHP to develop simple recruitment information publishing and filtering functions. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template