Maison  >  Article  >  développement back-end  >  Comment utiliser PHP pour implémenter la fonction d'approbation des tâches de l'applet WeChat ?

Comment utiliser PHP pour implémenter la fonction d'approbation des tâches de l'applet WeChat ?

WBOY
WBOYoriginal
2023-10-27 18:37:58841parcourir

Comment utiliser PHP pour implémenter la fonction dapprobation des tâches de lapplet WeChat ?

Comment utiliser PHP pour implémenter la fonction d'approbation des tâches du mini programme WeChat ?

Avec la popularité et le développement des mini-programmes WeChat, de plus en plus d'entreprises et d'organisations ont commencé à construire leurs propres systèmes commerciaux sur des mini-programmes. Parmi eux, la fonction d’approbation des tâches est une exigence courante. Cet article expliquera comment utiliser le langage PHP pour implémenter la fonction d'approbation des tâches de l'applet WeChat et fournira des exemples de code spécifiques.

1. Préparation
Avant de commencer, nous devons préparer l'environnement et les ressources suivants :

  1. Environnement de développement de mini-programme WeChat : vous devez enregistrer un mini-programme sur la plateforme publique WeChat et créer un environnement de développement de mini-programme localement.
  2. Environnement de développement PHP : vous devez créer un environnement de développement PHP localement et vous pouvez utiliser xampp, wamp, lamp et d'autres outils.
  3. Base de données : vous devez créer une base de données pour stocker les informations sur les tâches et les enregistrements d'approbation. Des bases de données relationnelles telles que MySQL et SQLite peuvent être utilisées.
  4. Développement de mini-programmes : vous devez utiliser des outils de développement de mini-programmes pour concevoir et développer des pages de mini-programmes et obtenir l'AppID du mini-programme.

2. Conception de la base de données
Avant de commencer à écrire du code, nous devons concevoir la structure de la table de la base de données pour stocker les informations sur les tâches et les enregistrements d'approbation.

  1. Tableau des tâches (task)
    Champs : ID de tâche (task_id, clé primaire), nom de la tâche (task_name), contenu de la tâche (task_content), initiateur (creator_id), approbateur (approver_id), statut d'approbation (status), heure de création (create_time) etc.
  2. Table d'enregistrement d'approbation (approval_history)
    Champs : ID d'enregistrement (history_id, clé primaire), ID de tâche (task_id, clé étrangère), approbateur (approver_id), heure d'approbation (approval_time), résultat de l'approbation (result), etc.

Trois, implémentation du code back-end

  1. Connectez-vous à la base de données

    <?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. Créer des tâches

    <?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. Interroger la liste des tâches

    <?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. Tâches d'approbation

    <?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);
    ?>

Quatre, Mini programme implémentation du code

  1. Créer une page de tâche (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. Page de liste de tâches de requête (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. Page de tâche d'approbation (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',
         });
       },
     });
      },
    });

Ce qui précède est l'utilisation de PHP pour implémenter le fonction d'approbation des tâches de l'applet WeChat Exemple simple. Bien entendu, davantage de situations doivent être prises en compte dans les applications réelles, telles que la vérification des données, les autorisations des utilisateurs, etc. J'espère que cela aide tout le monde.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn