Maison >développement back-end >tutoriel php >Comment implémenter la fonction de champ de recherche dans l'applet WeChat avec PHP

Comment implémenter la fonction de champ de recherche dans l'applet WeChat avec PHP

王林
王林original
2023-06-01 09:10:372275parcourir

Avec la popularité continue des mini-programmes WeChat, la fonction de champ de recherche est devenue un élément indispensable de nombreux mini-programmes. Il devient également de plus en plus important d’implémenter la fonction de champ de recherche de l’applet WeChat en PHP. Cet article explique comment utiliser PHP pour implémenter la fonction de champ de recherche dans l'applet WeChat.

  1. Obtenir la saisie de l'utilisateur

Avant d'implémenter la fonction de champ de recherche, vous devez d'abord obtenir les mots-clés saisis par l'utilisateur. À cette fin, vous pouvez utiliser le composant de zone de saisie de recherche fourni avec l'applet WeChat pour obtenir les mots-clés saisis par l'utilisateur en surveillant ses événements de saisie. Voici l'exemple de code :

//在wxml文件中
<search-input bind:input="getInput" />

//在相应的js文件中
Page({
  data: {
    keyword: ''
  },
  getInput(e) {
    this.setData({
      keyword: e.detail.value
    })
  }
})
  1. Interagir avec la base de données

Après avoir obtenu la saisie de l'utilisateur, vous devez ensuite la transmettre au PHP backend, puis Interagir avec la base de données pour la correspondance de recherche. Ici, nous supposons que MySQL est utilisé comme base de données. Voici l'exemple de code :

//在PHP文件中
<?php
header("Content-Type: text/html; charset=UTF-8");

$keyword = $_POST['keyword'];

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}

$sql = "SELECT * FROM table WHERE name LIKE '%".$keyword."%'";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo $row["name"]. "<br>";
    }
} else {
    echo "没有搜索到结果。";
}

$conn->close();
?>

Dans le code ci-dessus, les mots-clés saisis par l'utilisateur sont d'abord obtenus, puis la base de données est connectée, et un une recherche de correspondance floue est effectuée. Si un résultat est trouvé, le résultat est affiché ; sinon, "Aucun résultat n'est trouvé." Les données renvoyées par PHP sont affichées sur le client applet WeChat. Voici un exemple de code :

//在wxml文件中
<scroll-view>
  <view wx:for="{{list}}" wx:key="{{index}}">
    {{item.name}}
  </view>
</scroll-view>

//在相应的js文件中
Page({
  data: {
    list: []
  },
  onLoad() {
    wx.request({
      url: '',
      method: 'POST',
      data: {
        keyword: ''
      },
      success: res => {
        this.setData({
          list: res.data
        })
      }
    })
  }
})
    Dans le code ci-dessus, nous utilisons le composant d'affichage de défilement fourni avec l'applet WeChat pour afficher la liste de données renvoyée par PHP. Utilisez la méthode wx.request pour lancer une requête réseau vers le backend PHP et transmettre les mots-clés saisis par l'utilisateur sous forme de données. Les données renvoyées par PHP seront enregistrées dans la variable de liste du client sous la forme de res.data et seront mises à jour vers le client via setData.
  1. En résumé, voici les étapes ci-dessus pour utiliser PHP pour implémenter la fonction de champ de recherche dans l'applet WeChat. Il convient de noter que des contrôles de sécurité des données doivent être effectués sur les mots-clés saisis pour éviter les attaques par injection. Il convient de mentionner que lors du processus de développement proprement dit, des facteurs tels que la vitesse de recherche et l'expérience utilisateur doivent également être pris en compte pour rendre la fonction de recherche plus pratique et efficace.

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