Geschrieben von btiwienie am 16.06.2004, 17:12

//Das Tutorial enthält 3 kommentierte Dateien:
//spruchsuche.htm Ein Formular zur Sucheingabe
//spruchsuche2.php Ein Skript zur Suche und zur Ausgabe von Treffern
//spruch.dat Die Datei, die Sprüche enthält und durchsucht werden kann

//####Das file spruchsuche.htm : #####
<!doctype html PUBLIC "-//W3C//DTD html 4.0 transitional//EN">
<html>

<head>

<title>Sprüche durchsuchen</title>
</head>
<body>
<--/*Das folgende HTML File dient als Eingabeformular*/-->
<h1<Spruchsuche</h1>
<p>
Geben Sie hier Ihren Suchbegriff ein:<br>
</p>

<form action="spruchsuche2.php" method="post" target="_self">
<fieldset>
<legend>Suchwort eingeben </legend>
<label for="suchstring" class="left">Suche in Sprüchen:</label>
<input title="Suchworteingabe" type="text" id="suchstring" name="suchstring" value="" size="20" maxlength="24">
<input class="right" title="Absenden - Ergebnis folgt nach einmaligem Drücken" style="color:#00009F;bgcolor:#AFAFAF;bordercolor:#FFFFFF;" type="Submit" name="Suchen" value="Suchen !">
</fieldset>
</form>
</body>
</html>

############
Das file spruchsuche2.php :
#############

<!doctype html PUBLIC "-//W3C//DTD html 4.0 transitional//EN">
<html>
<head>
<title>Sprüche suchen - Ihr Ergebnis </title>
</head>
<body>
<h1>Spruchsuche</h1>

<p style="line-height:150%;">
Ihr letztes Suchwort war:

<?php
/*Das folgende Skript liest spruch.dat ein,
findet die Zeilen, die das Suchwort enthalten,
unabhängig von Groß- oder Kleinschreibung
gibt jeden Spruch aus, der das Suchwort enthält
markiert durch Fettdruck alle gefundenen Suchwörter
*/
//spruch.dat ist eine Text-Datei, die je Zeile genau einen Spruch enthält
//$suchstring ist die im Formular spruchsuche.php erzeugte Variable,
//also, was der Suchende als Suchwort eingegeben hat

//Array wird aus der Spruch-Datei eingelesen,
$suchtext=file('spruch.dat');
//Tags <> in der Eingabe werden gelöscht:
$suchstring=strip_tags($suchstring);
//Leerzeichen werden getilgt:
$suchstring=trim($suchstring);
//Wurde das Formular ohne Eingabe abgeschickt,
//wird eine Fehlermeldung ausgegeben!
if ($suchstring=="")
{
$suchstring="KEINE EINGABE";
}
echo "<b>"."$suchstring"."</b></p>";

echo "<h2>"."Ihr Suchergebnis:"."</h2>";
//Verwandelt die Eingabe in Kleinbuchstaben
$suchstring=strtolower($suchstring);

foreach ($suchtext as $durchsuchterspruch)
{
if (ereg ($suchstring, $durchsuchterspruch, $treffer))
{
$durchsuchterspruch=strip_tags($durchsuchterspruch);
$durchsuchterspruch=str_replace("~","<br>", $durchsuchterspruch);
$durchsuchterspruch=str_replace("$suchstring","<b>$suchstring</b>", $durchsuchterspruch);
echo "<p>".$durchsuchterspruch."</p>";
$zaehler_klein[] ="1";
}
}

//########## Finden und Ausgeben der Treffer mit Großbuchstabe: #######
// Den Inhalt von $suchstring in mit großem Anfangsbuchstaben umformen:
$suchstring=ucfirst($suchstring);

foreach ($suchtext as $durchsuchterspruch)
{
if (ereg ($suchstring, $durchsuchterspruch, $treffer))
{
$durchsuchterspruch=strip_tags($durchsuchterspruch);
$durchsuchterspruch=str_replace("~","<br>", $durchsuchterspruch);
$durchsuchterspruch=str_replace("$suchstring","<b>$suchstring</b>", $durchsuchterspruch);
echo "<p>".$durchsuchterspruch."</p>";
$zaehler_gross[] ="1";
}
}

// Die Treffer aus klein und groß addieren:
$trefferklein=count($zaehler_klein);
$treffergross=count($zaehler_gross);
$trefferzahl=$trefferklein + $treffergross;

echo "<p>";
echo "Wir haben "."<b>$trefferzahl</b>"." Übereinstimmung(en) gefunden:"."<br>";
echo "</p>";
if ($trefferzahl==0)
{
echo "<p>Leider kein Ergebnis!</p>";
}
?>

<h1>Neue Suche:</h1>
...
<!--
Hier ist sinnvoll das Eingabeformular (siehe oben) erneut einzufügen
-->
</body>
</html>
<!--## Ende der Datei

###Das File spruch.dat - könnte jede Form von zeilenweisen Angaben enthalten, die man dann durchsuchen kann, z. B. auch Adressen ...:

Was Du nicht willst, was man Dir tu, das füg auch keinem andern zu.
Wer andern eine Grube gräbt, fällt selbst hinein.

## Ende der Datei

Fragen etc. an -->

Bewertung Anzahl
6
50,0 %
1 Bewertungen
5
50,0 %
1 Bewertungen