Maison > développement back-end > tutoriel php > 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
Libérer: 2023-10-27 18:40:01
original
920 Les gens l'ont consulté

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);
      }
    ?>
    Copier après la connexion
  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);
    ?>
    Copier après la connexion
  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);
    ?>
    Copier après la connexion
  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);
    ?>
    Copier après la connexion

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',
         });
       },
     });
      },
    });
    Copier après la connexion
  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',
         });
       },
     });
      },
    });
    Copier après la connexion
  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',
         });
       },
     });
      },
    });
    Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal