Maison  >  Article  >  développement back-end  >  Comment utiliser PHP pour développer la fonction de rappel de planning de l'applet WeChat ?

Comment utiliser PHP pour développer la fonction de rappel de planning de l'applet WeChat ?

王林
王林original
2023-10-27 17:18:201415parcourir

Comment utiliser PHP pour développer la fonction de rappel de planning de lapplet WeChat ?

Comment utiliser PHP pour développer la fonction de rappel de planning de l'applet WeChat ?

Avec la popularité des mini-programmes WeChat, de plus en plus de développeurs commencent à s'intéresser à la manière d'implémenter plus de fonctions dans les mini-programmes. Parmi elles, la fonction de rappel d’horaire est l’une des fonctions les plus couramment utilisées et pratiques pour les utilisateurs. Cet article expliquera comment utiliser PHP pour développer la fonction de rappel de planification de l'applet WeChat et fournira des exemples de code spécifiques.

  1. Configurez l'environnement de développement

Tout d'abord, assurez-vous d'avoir installé l'environnement PHP. Avant de commencer, vous devez installer les packages ou bibliothèques dépendants suivants :

  • PHP 5.6 ou supérieur
  • Base de données MySQL
  • Outils de développement d'applets WeChat
  1. Créer une base de données et une table de données

Dans la base de données MySQL, créez un Une base de données nommée schedule et créez une table de données nommée rappel. Les champs de la table de données sont les suivants : schedule的数据库,并创建一个名为reminder的数据表。数据表字段如下:

CREATE TABLE `reminder` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `openid` varchar(255) NOT NULL,
  `title` varchar(255) NOT NULL,
  `content` text NOT NULL,
  `reminder_time` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  1. 获取用户的openid

在用户登录小程序时,获取用户的openid,并将其保存在全局变量中。

// 在 app.js 中
App({
  // ...
  globalData: {
    openid: null
  },
  // ...
  onLaunch: function() {
    // 获取用户openid
    wx.login({
      success: function(res) {
        if (res.code) {
          // 调用后端接口获取openid
          wx.request({
            url: 'https://your-backend-domain.com/getOpenid.php',
            data: {
              code: res.code
            },
            success: function(res) {
              // 将openid保存在全局变量中
              getApp().globalData.openid = res.data.openid;
            }
          });
        } else {
          console.log('登录失败!' + res.errMsg);
        }
      }
    });
  },
  // ...
});
  1. 添加日程提醒

在小程序中,用户添加一个日程提醒时,首先我们需要向后端发送请求,将日程信息保存到数据库中。

wx.request({
  url: 'https://your-backend-domain.com/addReminder.php',
  method: 'POST',
  data: {
    openid: getApp().globalData.openid,
    title: '日程标题',
    content: '日程内容',
    reminder_time: '2022-01-01 10:00:00'
  },
  success: function(res) {
    // 提示用户添加成功
    wx.showToast({
      title: '添加成功',
      icon: 'success',
      duration: 2000
    });
  },
  fail: function(res) {
    console.log('添加失败!' + res.errMsg);
  }
});
  1. 查询待提醒的日程

后端需要提供一个接口,查询当前时间之前待提醒的日程。

// getReminders.php
<?php
header('Content-Type: application/json');

// 连接数据库
$db_host = 'localhost';
$db_user = 'your_username';
$db_password = 'your_password';
$db_name = 'schedule';
$db = new mysqli($db_host, $db_user, $db_password, $db_name);
if ($db->connect_errno) {
  die('连接数据库失败!');
}

// 查询待提醒的日程
$now = date('Y-m-d H:i:s');
$query = "SELECT * FROM reminder WHERE openid = '{$_GET['openid']}' AND reminder_time <= '{$now}'";
$result = $db->query($query);

// 返回查询结果
$reminders = [];
while ($row = $result->fetch_assoc()) {
  array_push($reminders, $row);
}
echo json_encode($reminders);

// 关闭数据库连接
$db->close();
?>
  1. 后端发送提醒

后端根据查询结果,将待提醒的日程发送给微信小程序。小程序在收到提醒后,使用微信提供的wx.showModal

// 在 app.js 中
setInterval(function() {
  wx.request({
    url: 'https://your-backend-domain.com/getReminders.php',
    data: {
      openid: getApp().globalData.openid
    },
    success: function(res) {
      if (res.data.length > 0) {
        // 弹出提醒窗口
        for (var i = 0; i < res.data.length; i++) {
          wx.showModal({
            title: res.data[i].title,
            content: res.data[i].content,
            showCancel: false
          });
        }
      }
    }
  });
}, 60000); // 每分钟轮询一次

    Obtenir l'openid de l'utilisateur

    🎜Lorsque l'utilisateur se connecte à l'applet, obtenez l'openid de l'utilisateur et enregistrez-le dans une variable globale. 🎜rrreee
      🎜Ajouter un rappel de planning🎜🎜🎜Dans le mini programme, lorsque l'utilisateur ajoute un rappel de planning, nous devons d'abord envoyer une demande au backend et enregistrer les informations de planning dans la base de données. 🎜rrreee
        🎜Interroger l'horaire à rappeler🎜🎜🎜Le backend doit fournir une interface pour interroger l'horaire à rappeler avant l'heure actuelle. 🎜rrreee
          🎜Le backend envoie des rappels🎜🎜🎜Le backend envoie le calendrier à rappeler à l'applet WeChat en fonction des résultats de la requête. Après avoir reçu le rappel, le mini-programme utilise l'interface wx.showModal fournie par WeChat pour faire apparaître la fenêtre de rappel. 🎜rrreee🎜Ci-dessus sont les étapes et les exemples de code pour utiliser PHP pour développer la fonction de rappel de planning de l'applet WeChat. Grâce aux étapes ci-dessus, nous pouvons mettre en œuvre une fonction simple de rappel d’horaire pour aider les utilisateurs à mieux gérer leur temps. Bien entendu, les développeurs peuvent optimiser et étendre le code en fonction de leurs propres besoins. J'espère que cet article vous sera utile ! 🎜

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