> 백엔드 개발 > PHP 튜토리얼 > PHP를 사용하여 WeChat 애플릿의 작업 승인 기능을 구현하는 방법은 무엇입니까?

PHP를 사용하여 WeChat 애플릿의 작업 승인 기능을 구현하는 방법은 무엇입니까?

WBOY
풀어 주다: 2023-10-27 18:40:01
원래의
921명이 탐색했습니다.

PHP를 사용하여 WeChat 애플릿의 작업 승인 기능을 구현하는 방법은 무엇입니까?

PHP를 사용하여 WeChat 미니 프로그램의 작업 승인 기능을 구현하는 방법은 무엇입니까?

WeChat 미니 프로그램의 인기와 발전으로 점점 더 많은 기업과 조직이 미니 프로그램을 기반으로 자체 비즈니스 시스템을 구축하기 시작했습니다. 그 중 작업 승인 기능은 공통 요구 사항입니다. 이 기사에서는 PHP 언어를 사용하여 WeChat 애플릿의 작업 승인 기능을 구현하는 방법을 소개하고 구체적인 코드 예제를 제공합니다.

1. 준비
시작하기 전에 다음 환경과 리소스를 준비해야 합니다.

  1. WeChat 미니 프로그램 개발 환경: WeChat 공개 플랫폼에 미니 프로그램을 등록하고 로컬로 미니 프로그램 개발 환경을 구축해야 합니다.
  2. PHP 개발 환경: 로컬에서 PHP 개발 환경을 구축해야 하며 xampp, wamp, lamp 및 기타 도구를 사용할 수 있습니다.
  3. 데이터베이스: 작업 정보와 승인 기록을 저장하기 위한 데이터베이스를 생성해야 합니다. MySQL, SQLite 등의 관계형 데이터베이스를 사용할 수 있습니다.
  4. 미니 프로그램 개발: 미니 프로그램 개발 도구를 사용하여 미니 프로그램 페이지를 디자인 및 개발하고 미니 프로그램의 AppID를 얻어야 합니다.

2. 데이터베이스 설계
코드 작성을 시작하기 전에 작업 정보와 승인 기록을 저장할 데이터베이스 테이블 구조를 설계해야 합니다.

  1. 작업 테이블(task)
    필드: 작업 ID(task_id, 기본 키), 작업 이름(task_name), 작업 내용(task_content), 개시자(creator_id), 승인자(approver_id), 승인 상태(status), 생성 시간 (create_time) 등
  2. 승인 기록 테이블(approval_history)
    필드: 기록 ID(history_id, 기본 키), 작업 ID(task_id, 외래 키), 승인자(approver_id), 승인 시간(approval_time), 승인 결과(result) 등

세 가지 백엔드 코드 구현

  1. 데이터베이스에 연결

    <?php
      $servername = "localhost";
      $username = "your_username";
      $password = "your_password";
      $dbname = "your_database";
    
      $conn = new mysqli($servername, $username, $password, $dbname);
    
      if ($conn->connect_error) {
       die("连接失败: " . $conn->connect_error);
      }
    ?>
    로그인 후 복사
  2. 작업 만들기

    <?php
      $task_name = $_POST['task_name'];
      $task_content = $_POST['task_content'];
      $creator_id = $_POST['creator_id'];
      $approver_id = $_POST['approver_id'];
    
      $sql = "INSERT INTO task (task_name, task_content, creator_id, approver_id, status, create_time) VALUES ('$task_name', '$task_content', '$creator_id', '$approver_id', 'pending', NOW())";
    
      if ($conn->query($sql) === TRUE) {
       $result = array('code' => 200, 'message' => '任务创建成功');
      } else {
       $result = array('code' => 500, 'message' => '任务创建失败');
      }
    
      echo json_encode($result);
    ?>
    로그인 후 복사
  3. 작업 목록 쿼리

    <?php
      $creator_id = $_GET['creator_id'];
    
      $sql = "SELECT * FROM task WHERE creator_id = '$creator_id'";
    
      $result = $conn->query($sql);
    
      if ($result->num_rows > 0) {
       $tasks = array();
       while($row = $result->fetch_assoc()) {
         $tasks[] = $row;
       }
       $result = array('code' => 200, 'message' => '查询成功', 'data' => $tasks);
      } else {
       $result = array('code' => 500, 'message' => '查询失败');
      }
    
      echo json_encode($result);
    ?>
    로그인 후 복사
  4. 작업 승인

    <?php
      $history_id = $_POST['history_id'];
      $task_id = $_POST['task_id'];
      $approver_id = $_POST['approver_id'];
      $result = $_POST['result'];
    
      $sql = "INSERT INTO approval_history (history_id, task_id, approver_id, approval_time, result) VALUES ('$history_id', '$task_id', '$approver_id', NOW(), '$result')";
    
      if ($conn->query($sql) === TRUE) {
       // 更新任务状态
       $update_sql = "UPDATE task SET status = '$result' WHERE task_id = '$task_id'";
       $conn->query($update_sql);
    
       $result = array('code' => 200, 'message' => '审批成功');
      } else {
       $result = array('code' => 500, 'message' => '审批失败');
      }
    
      echo json_encode($result);
    ?>
    로그인 후 복사

넷, 미니프로그램 코드 구현

  1. 작업 생성 페이지(createTask)

    Page({
      data: {
     task_name: '',
     task_content: '',
     creator_id: '',
     approver_id: '',
      },
      createTask: function() {
     wx.request({
       url: 'https://your_domain.com/create_task.php',
       method: 'POST',
       data: {
         task_name: this.data.task_name,
         task_content: this.data.task_content,
         creator_id: this.data.creator_id,
         approver_id: this.data.approver_id,
       },
       success: function(res) {
         console.log(res.data);
         if (res.data.code === 200) {
           wx.showToast({
             title: '任务创建成功',
           });
         } else {
           wx.showToast({
             title: '任务创建失败',
             icon: 'none',
           });
         }
       },
       fail: function() {
         wx.showToast({
           title: '请求失败',
           icon: 'none',
         });
       },
     });
      },
    });
    로그인 후 복사
  2. 작업 목록 페이지 쿼리(taskList)

    Page({
      data: {
     creator_id: '',
     tasks: [],
      },
      onLoad: function() {
     var that = this;
     wx.request({
       url: 'https://your_domain.com/query_task.php',
       data: {
         creator_id: this.data.creator_id,
       },
       success: function(res) {
         console.log(res.data);
         if (res.data.code === 200) {
           that.setData({
             tasks: res.data.data,
           });
         } else {
           wx.showToast({
             title: '查询失败',
             icon: 'none',
           });
         }
       },
       fail: function() {
         wx.showToast({
           title: '请求失败',
           icon: 'none',
         });
       },
     });
      },
    });
    로그인 후 복사
  3. 작업 승인 페이지(approveTask)

    Page({
      data: {
     history_id: '',
     task_id: '',
     approver_id: '',
     result: '',
      },
      approveTask: function() {
     wx.request({
       url: 'https://your_domain.com/approve_task.php',
       method: 'POST',
       data: {
         history_id: this.data.history_id,
         task_id: this.data.task_id,
         approver_id: this.data.approver_id,
         result: this.data.result,
       },
       success: function(res) {
         console.log(res.data);
         if (res.data.code === 200) {
           wx.showToast({
             title: '审批成功',
           });
         } else {
           wx.showToast({
             title: '审批失败',
             icon: 'none',
           });
         }
       },
       fail: function() {
         wx.showToast({
           title: '请求失败',
           icon: 'none',
         });
       },
     });
      },
    });
    로그인 후 복사

위는 PHP를 사용하여 구현한 것입니다. WeChat 애플릿의 작업 승인 기능 간단한 예입니다. 물론 실제 애플리케이션에서는 데이터 검증, 사용자 권한 등 더 많은 상황을 고려해야 합니다. 그것이 우리에게 도움이 되기를 바랍니다.

위 내용은 PHP를 사용하여 WeChat 애플릿의 작업 승인 기능을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿