Search query composer

Contenu du snippet

Cette petite fonction vous permettra de composer une condition MySQL pour par exemple une barre de recherche avec auto-complétion AJAX.

Source / Exemple :


function search_query_composer($search,$title)
{
	$tab = array_unique(explode(' ',$search));
	$cond = array();
	foreach ($tab as $key)
	{
		foreach ($title as $field)
		{
			if ($key!='')
				$cond[] = $field.' LIKE "%'.addslashes($key).'%"';
		}
	}
	if (!empty($cond))
	{
		return implode(' OR ',$cond);
	}
	else
		return '1=1';
}

Conclusion :


Utilisation :

$cond search_query_composer($search,$title)

$search string : mots clés recherchés par l'utilisateur séparés par un espace (à récupérer directement via la page appelée par AJAX.
Exemple : "cochon dine coucou lol hibou "

$title : array(string) : tableau des champs sql dans lesquels rechercher.
Exemple : "array('nom','prenom','adresse")"

$cond string : condition composée. A insérer directement dans le code sql comme n'importe quelle condition.
Exemple : 'SELECT nom,prenom FROM contacts WHERE '.$cond.' ORDER BY nom'

La meilleure utilisation est une recherche de contacts.
En tapant le nom, le prénom on peut accéder à la liste des contacts correspondant à/aux mot(s)-clé saisis.

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.