• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

FAQs mit Suchfunktion

bzwerg

Neues Mitglied
Hallo,

ich möchte gern eine HTML Seite erstellen in der man sich FAQs durchlesen kann. Es soll aber so sein, dass der Besucher zu Beginn zentral nur eine Suchleiste sieht (ähnlich Google.de) und mit Eingabe eines Schlagwortes (z.B. Passwort) werden ihm auf der selben Seite alle FAQs angezeigt, die den Begriff Passwort beinhalten (z.B. Passwort vergessen? Wie setzten Sie Ihr Passwort zurück.) + Antwort.

Mein Gedanke ist, dass alle FAQs bereit liegen, aber noch nicht sichtbar sind. Nur durch die Suche werden die einzelnen Fragen+Antworten angezeigt.

Wie gesagt, alles soll auf einer Seite passieren. Bitte kein Absprung auf Unterseiten.

Vielen Dank
 
Werbung:
Jetzt wissen wir, was du möchtest. Wenn wir jetzt noch wissen würden, wie deine Frage lautet und was du bisher versucht hast, kommen wir vielleicht auch weiter.
 
Jetzt wissen wir, was du möchtest. Wenn wir jetzt noch wissen würden, wie deine Frage lautet und was du bisher versucht hast, kommen wir vielleicht auch weiter.
Ich hoffe ihr könnt mir einen Lösungsweg vorschlagen oder einen Tipp geben, wie ihr es angehen würdet. Bisher habe ich noch nicht mit Suchfunktionen gearbeitet.
 
Werbung:
Lege eine Datenbank an, in die du deine Daten speicherst. Mit Hilfe von PHP wertest du dann dein Formular aus und sucht die eingegebenen Begriffe in der Datenbank. Eigentlich nichts besonderes, bekommt man mit Grundlagen wissen hin
 
Die Nummer ist aber für eine stetig wachsende FAQ nicht gerade ideal.
 
Werbung:
Und so einfach wäre es, wenn du das vernünftigerweise über eine Datenbank machen würdest:
PHP:
<?php
   $output = array();
  
   if (isset($_POST['searchTerms']))
   {         
       $terms = explode (" ", $_POST['searchTerms']);
      
       if (count($terms))
       {
          $link = mysqli_connect("localhost", "user", "password", "database");

          if (mysqli_connect_errno())
            die("Connect failed: " . mysqli_connect_error());

          for ($i = 0; $i < count($terms); $i++)
             $terms[$i] = "`data` like '%" .  mysqli_real_escape_string($link, $terms[$i]) . "%'";
          
          $query = "Select `data` from `table` where " . implode(" or ", $terms);
          
          $result = mysqli_query($link, $query)
            or die ("MySQL-Error: " . mysqli_error($link));
        
          while ($data = mysqli_fetch_assoc($result))
             $output[] = "<p>" . $data['data'] . "</p>";
      }
   }
?>
<!doctype html>
<html lang="de">
  <head>
    <meta charset="utf-8">
    <title>FAQ</title>
  </head>
  <body>
    <form action="" method="post">
      Suchbegriffe: <input type="text" name="searchTerms"><br>
      <input type="submit" name="submit" value="Suchen">
    </form>
<?php
   if (count($output))
     echo implode("<br>\n", $output);
?>
  </body>
</html>
 
Zurück
Oben