Datenbank nach Teilwort durchsuchen

Gray

Erfahrenes Mitglied
Ich benötige eine möglichkeit in einer Datenbank nach einem Wort zu suchen, ungefähr so:

man gibt is Suchfeld "Hans Peter" ein, es gibt nun eine Tabelle mit Vornamen und eine mit Nachnamen, nun soll es bei allen wo es Hans oder wo es Peter findet diese ausgeben, egal aus welcher der beiden Tabellen das ergebniss stammt.

Noch ein bischen genauer:

Suche = Hans Peter

Ergebniss:
Hans Mustermann
Peter Schuhmann
Gabi Peters
usw.
 
Versuch mal folgende Abfrage:
PHP:
<?php
	[…]
	$suchanfrage = 'Hans Peter';
	$suchwoerter = explode(' ', $suchanfrage);

	$query = "
		SELECT
		        […]
		  FROM
		        `tabelle`
		  WHERE
	";
	$temp = next($suchwoerter);
	do {
		if( prev($temp) === TRUE ) $query .= ' OR ';
		$query .= " CONCAT(`vorname`, ' ', `nachname`) LIKE '%".strtolower($temp)."%'";
	} while( $temp = next($suchwoerter );
	[…]
?>
 
Zurück