Auf der Suchseite der Website müssen wir häufig die Funktion zum Klicken auf eine Schaltfläche implementieren, um die Abfragebedingungen zu speichern. Als Programmiersprache kann PHP diese Funktion problemlos implementieren. In diesem Artikel stellen wir vor, wie Sie die Funktion zum Speichern von Abfragebedingungen durch Klicken auf eine Schaltfläche in PHP implementieren.
1. Problembeschreibung
Auf den Suchseiten vieler Websites können wir einige Schaltflächen sehen, beispielsweise die Schaltfläche „Abfragebedingungen speichern“. Die Funktion dieser Schaltfläche besteht darin, die aktuellen Suchbedingungen zu speichern, sodass bei einer erneuten Suche in der Zukunft diese Bedingungen ohne erneute Eingabe direkt geladen werden können.
2. Lösung
Es gibt viele Möglichkeiten, diese Funktion zu implementieren, aber in diesem Artikel werden wir die PHP-Sitzung verwenden, um sie zu erreichen. Sitzung ist eine Technologie, die Informationen auf der Serverseite speichert. Sie können eine dauerhafte Speicherung von Benutzerdaten erreichen, indem Sie Sitzungsvariablen festlegen. Wenn der Benutzer den Browser schließt, wird die Sitzung automatisch zerstört. Als Nächstes stellen wir vor, wie Sie mithilfe einer PHP-Sitzung die Funktion des Klickens auf eine Schaltfläche zum Speichern von Abfragebedingungen realisieren.
Zuerst müssen wir eine Suchseite erstellen, einschließlich einiger Suchbedingungen und einer Schaltfläche „Abfragebedingungen speichern“, wie unten gezeigt:
<html> <head> <title>搜索页面</title> </head> <body> <form method="get" action="result.php"> <label>关键字:</label> <input type="text" name="keyword"><br> <label>日期:</label> <input type="date" name="date"><br> <label>类型:</label> <select name="type"> <option value="1">新闻</option> <option value="2">论文</option> <option value="3">博客</option> </select><br> <input type="submit" value="搜索"> <input type="button" value="保存查询条件" onclick="saveSearch()"> </form> </body> </html>
Auf dieser Seite verwenden wir das HTML-Formular-Tag So erstellen Sie ein Suchformular und verwenden einige HTML-Elemente zur Eingabe von Suchbedingungen. Beachten Sie, dass wir im letzten Eingabe-Tag ein Onclick-Ereignis festlegen. Wenn der Benutzer auf die Schaltfläche „Abfragebedingungen speichern“ klickt, löst dieses Ereignis eine JavaScript-Funktion saveSearch() aus.
Im vorherigen Schritt haben wir das Onclick-Ereignis eingerichtet, das eine JavaScript-Funktion saveSearch() auslöst. Lassen Sie uns diese Funktion implementieren. Die Funktion dieser Funktion besteht darin, die aktuellen Suchbedingungen in der PHP-Sitzung zu speichern.
<script> function saveSearch() { var keyword = document.getElementsByName("keyword")[0].value; var date = document.getElementsByName("date")[0].value; var type = document.getElementsByName("type")[0].value; var search = {"keyword": keyword, "date": date, "type": type}; var searchStr = JSON.stringify(search); sessionStorage.setItem("search", searchStr); } </script>
In dieser Funktion holen wir zunächst die vom Benutzer eingegebenen Suchbegriffe ab und speichern sie dann in einer JavaScript-Objektsuche. Als nächstes verwenden wir JSON.stringify, um dieses Objekt in einen JSON-String umzuwandeln und ihn unter dem Namen „search“ in der PHP-Sitzung zu speichern.
Wenn der Benutzer erneut sucht, müssen wir die zuvor gespeicherten Suchbedingungen aus der PHP-Sitzung laden. Wir können der Suchergebnisseite einen Teil des PHP-Codes hinzufügen, um diese Bedingungen zu laden:
<?php session_start(); if (isset($_SESSION['search'])) { $search = json_decode($_SESSION['search'], true); $keyword = $search['keyword']; $date = $search['date']; $type = $search['type']; } ?>
In diesem Code rufen wir zuerst die Funktion session_start() auf, um die Sitzung zu öffnen, und ermitteln dann, ob $_SESSION['search'] vorhanden ist . Wenn es vorhanden ist, bedeutet dies, dass die Suchbedingungen zuvor gespeichert wurden. Wir verwenden json_decode, um den gespeicherten JSON-String in ein PHP-Array zu konvertieren und daraus die Schlüsselwörter, das Datum und den Typ abzurufen. Diese Werte können zur Initialisierung von Eingabe- und Auswahlfeldern in Suchformularen verwendet werden.
Schließlich müssen wir die geladenen Suchkriterien verwenden, um den Suchvorgang durchzuführen. Wir können eine JavaScript-Funktion initSearch() im Formular-Tag der Suchseite hinzufügen, um die Suchbedingungen zu initialisieren:
<script> function initSearch() { <?php if (isset($keyword)) { echo "document.getElementsByName('keyword')[0].value = '$keyword';"; } if (isset($date)) { echo "document.getElementsByName('date')[0].value = '$date';"; } if (isset($type)) { echo "document.getElementsByName('type')[0].value = '$type';"; } ?> } </script>
Diese Funktion wird beim Laden der Seite ausgeführt und weist den Wert der Suchbedingungen den entsprechenden Eingabefeldern und zu Auswahlfelder. Wir müssen nur ein Onload-Ereignis im Formular-Tag hinzufügen:
<form method="get" action="result.php" onload="initSearch()">
Auf diese Weise werden diese Bedingungen in den entsprechenden Eingabefeldern und Auswahlfeldern initialisiert, wenn der Benutzer auf die Suchseite zugreift und die Suchbedingungen zuvor gespeichert wurden , und der Benutzer Sie können sie direkt für Suchvorgänge verwenden.
3. Zusammenfassung
In diesem Artikel erfahren Sie, wie Sie Suchbedingungen über eine PHP-Sitzung speichern und die gespeicherten Bedingungen direkt bei der nächsten Suche laden, damit Benutzer Suchvorgänge schnell durchführen können. Diese Funktion ist für das Sucherlebnis der Benutzer sehr hilfreich, da sie die Anzahl der Benutzereingaben reduziert und die Benutzerzufriedenheit erhöht.
Das obige ist der detaillierte Inhalt vonEine kurze Analyse, wie die Funktion zum Speichern von Abfragebedingungen durch Klicken auf eine Schaltfläche in PHP implementiert wird. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!