Für ein Projekt musste ich eine kleine Suchfunktion erstellen, da diese eigentlich weniger was für Clan's ist, sonder mehr für Firmen etc. werde ich es erstmal so anbieten und nicht als Modul.
Die Suchfunktion arbeitet so, dass wenn man ein Wort eingibt, die komplette Seite durchsucht wird, die in der Navigation verlinkt ist (Queltext wird durchsucht).
Wie baue ich die Suchfunktion in meine Homepage ein?
1. Öffne deine index.htm und ersetze {EXPLODE} mit
<div id="anfsearch">{EXPLODE}</div><div id="end"></div>
2. Erstelle eine PHP datei namen testsearch.php in include/contents und füge folgenden Code ein
<?php defined ('main') or die ( 'no direct access' ); $title = $allgAr['title'].' :: Suche'; $hmenu = 'Suche'; $design = new design ( $title , $hmenu ); $design->header(); function comment_decode($string) { $string = preg_replace("/(\<\!\-\-.*\-\-\>)/sU", "", $string); return $string; } $suche = escape($_POST['search'],'string'); ?> <form method="post" action="?testsearch"> <input type="text" name="search" value="<?php echo $suche; ?>" /><input type="submit" name="submit" value="Suchen" /> </form> <?php if(isset($_POST['submit']) AND !empty($suche)){ $query = ' SELECT * FROM prefix_menu WHERE was = "7" or was = "9" '; $sql = db_query($query); $i = '0'; while($row = db_fetch_object($sql)){ $content = file_get_contents('http://localhost/ilch/index.php?'.$row->path); $content = explode('<div id="anfsearch',$content); $content = $content[1]; $content = explode('<div id="end"',$content); $content = $content[0]; $content = comment_decode($content); $content = strip_tags($content); if(strpos($content,$suche)){ echo '<h2><a href="?'.$row->path.'">'.$row->name.'</a></h2>'; $content = str_replace($suche,'<b>'.$suche.'</b>',$content); $content = wordwrap($content,'80','WRRRR/0'); $content = explode('WRRRR/0',$content); foreach($content AS $ar){ if(strpos($ar,$suche)){ echo $ar.'...<br />'; } } $i++; } } if($i == '0'){ echo 'Keine Suchergebnisse gefunden!'; } } else{ echo 'Keine Suchergebnisse gefunden!'; } $design->footer(); ?>
3. erstelle eine suche.php Datei in include/boxes und füge folgenden Code ein
<?php defined ('main') or die ( 'no direct access' ); ?> <form method="post" action="?testsearch"> <input type="text" name="search" /><br /> <input type="submit" name="submit" value="Suchen" /> </form>
4. Verlinke die box oder menüpunkt im Admin Bereich