[Tutorial][PHP]Suchfunktion in MySQL-Datenbank

Diskutiere über Web-Entwicklung, Coding und Websites.
Antworten
DAMO
Private First Class
Private First Class
Beiträge: 47
Registriert: Mo 07 Feb, 2005 17:53

[Tutorial][PHP]Suchfunktion in MySQL-Datenbank

Beitrag von DAMO »

Hiermit geht ein weiteres "Tutorial" von mir online. Es handelt sich dabei um eine einfache Suchfunktion, bei eine Auswahl getroffen werden kann, in welchen Tabellen gesucht werden soll. Als Treffer wird der gesamt Datenbankeintarg ausgegeben, das Suchwort wird dabei farblich markiert.

Fangen wir an:

Erstelle eine Datei namens suche_formular.php mir diesem Inhalt:

Code: Alles auswählen

  
     
       
       
       
    
     
      Suchbegriff
       
        
      
       
    
     
       
    
     
      Welche Datenbanken sollen durchsucht werden?
    
     
      Scripte: 
        
      
      Forum: 
        
      
      Tutorials: 
        
      
      Specials: 
        
      
    
     
       
        
      
       
        
      
       
       
    
  
OK, dabei handelt es sich um das einfach Formular, indem der Benutzer den Suchbegriff eingibt, und dann auswählt, in welchen Datenbanken gesucht werden soll. Also noch ganz einfach! ;)

Weiter gehts ...

Neue Datei namens suche.php mit folgendem Inhalt:

Code: Alles auswählen

inhalt;					//Alle Wörter der Tabellenzeile einlesen
								$daten = strtolower($daten);			//Umwandlung in Kleinbuchstaben
								$teil = explode(" ", $daten);			//Splitten des Strings in einen Array
								if (in_array("$suchwort", $teil))		//Durchsuchen des Array nach dem Wort
								  include("gefunden_script.php");		//Einlesen der "gefunden.htm", welche das Aussehen der Suchergebnisse bestimmt
						    	}
							}
						if($forum_box == "checkbox"){
							echo "Derzeit gibt es noch kein Forum. (Stand: 30.09.2004 19:50)";}
						if($tutorials_box == "checkbox"){
							$abfrage = "SELECT * FROM $tabname5";
							$ergebnis = mysql_query($abfrage);
							while($row = mysql_fetch_object($ergebnis))
						    {
								$daten = $row->inhalt;					//Alle Wörter der Tabellenzeile einlesen
								$daten = strtolower($daten);			//Umwandlung in Kleinbuchstaben
								$teil = explode(" ", $daten);			//Splitten des Strings in einen Array
								if (in_array("$suchwort", $teil))		//Durchsuchen des Array nach dem Wort
								  include("gefunden_tut.php");		//Einlesen der "gefunden.htm", welche das Aussehen der Suchergebnisse bestimmt
						    	
								$daten = $row->tutorial_inhalt;			//Alle Wörter der Tabellenzeile einlesen
								$daten = strtolower($daten);			//Umwandlung in Kleinbuchstaben
								$teil = explode(" ", $daten);			//Splitten des Strings in einen Array
								if (in_array("$suchwort", $teil))		//Durchsuchen des Array nach dem Wort
								  include("gefunden_tut.php");		//Einlesen der "gefunden.htm", welche das Aussehen der Suchergebnisse bestimmt
						    	}
							}
						if($specials_box == "checkbox"){
							echo "Derzeit gibt es noch keine Specials. (Stand: 30.09.2004 19:50)";}
					}?>
Ich habe versucht, alles im Code so gut es geht zu dokumentieren. Bei Fragen, fragt!! :D

So, und zum Schluss noch 2 Dateien. Bei denen handelt es sich um dieAusgabe der Ergebnisse. Für jede Datenbank, die durchsucht wurde, ist eine seperate Datei vorgesehen! Daher, weil nur 2 Suchen finktionieren, 2 Dateien!

Erstelle einmal die Datei gefunden_script.php mit dem Inhalt:

Code: Alles auswählen


  
    Suchergebnisse - Scripte
  
  
     
      $suchwort",$part);
		echo " $part";}
	?>
    
  
Und dann noch gefunden_tut.php mit diesem Inhalt:

Code: Alles auswählen


  
    Suchergebnisse - Tutorials
  
  
     
      $suchwort",$part);
		echo " $part";}
	?>
    
  
OK, das wars! Fertig ist die einfache Suchfunktion ....

Hinweis: Bei dieser Version handelt es sich um eine Version, die ich genau so auf meiner Website eeingesetzt habe. Daher auch die ungewöhnlichen Bezeichnungen und die Unvollständigkeit!

Bei Verständnisproblemen: FRAGEN!! ;) Dazu bin ich da, und mir macht es Spass!!
Antworten