Re Bonjour tout le monde
Je reviens encore avec mes problèmes (il y en a un autre et se serra fini)
J'ai créer une petit moteur de recherche en FULLTEXT (et LIKE si l'on veut rajouter des critères à la recherche)
Bon bref c'est pas terrible et je suis consient de pas être un pro du PHP.
MAIS et je dis bien mais, un problème persiste.
La recherche fonctionne, SAUF sur un client (et seulement 2 caractère je ne sais pourquoi)
Je vous explique :
Voici ma table :
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 CREATE TABLE `clients` ( `id` int(10) unsigned NOT NULL auto_increment, `categorie` varchar(200) default NULL, `nom` varchar(200) default NULL, `prenom` varchar(200) default NULL, `profession` varchar(200) default NULL, `societe` varchar(200) default NULL, `adresse` varchar(200) default NULL, `adresse2` varchar(200) default NULL, `codepostal` varchar(200) default NULL, `ville` varchar(200) default NULL, `fixe` varchar(200) default NULL, `fax` varchar(200) default NULL, `portable` varchar(200) default NULL, `fonction` varchar(200) default NULL, `site` varchar(200) default NULL, `mail` varchar(200) default NULL, `commentaire` text, `idnom` int(11) NOT NULL, PRIMARY KEY (`id`), FULLTEXT KEY `nom` (`categorie`,`nom`,`prenom`,`profession`,`societe`,`adresse`,`adresse2`,`codepostal`,`ville`,`fixe`,`fax`,`portable`,`fonction`,`site`,`mail`,`commentaire`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=4267 ;
Et Voici l'endroit ou ça foire :
Lorsque je recherche "jl", il ne me trouve pas l'adresse mail (même si l'on remplace "jl" par "yu" ou n'importe quoi qui à 2 caractère) Par contre si je recherche "bihll" ou "mangerlesfrite" il me retourne bien l'adresse mail....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 (43, 'Particulier', 'Bidddl', 'Mil Ldeuc', NULL, NULL, '2 rue des nouilles patates frite', '', '66600', 'Moulinlaville', '0376564657', NULL, '', NULL, NULL, 'jl.bihll@mangerlesfrite.zo', 'Famille\r\n', 37),
Alors que
ici si l'on recherche "cl" il retourne bien l'adresse mail !!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 (1, 'Particuliers', 'Badouhe', 'Cladee', NULL, NULL, '21 bis nan tu sauras pas', '', '57950', 'Icibas', '0344444444', NULL, '0666666666', NULL, NULL, 'cl.bau zer@free.fr', 'Famille\r\n', 28),
Au cas ou voici un bout d'mon code php (la partie requete pour la recherche)
Je n'ai vraiment aucune idée pourquoi il ne veut pas chercher dans cette foutu ligne les 2 caratères avant le point de l'adresse mail...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 if ($zcrite=='znom'){ $requetemysql = "SELECT * FROM ".$table." WHERE nom LIKE \"%".$recherche."%\""; } elseif ($zcrite=='zprenom') { $requetemysql = "SELECT * FROM ".$table." WHERE prenom LIKE \"%".$recherche."%\""; } elseif ($zcrite=='zvillez'){ $requetemysql = "SELECT * FROM ".$table." WHERE ville LIKE \"%".$recherche."%\""; } else{ $requetemysql = 'SELECT * FROM '.$table.' WHERE MATCH (categorie,nom,prenom,profession,societe,adresse,adresse2,codepostal,ville,fixe,portable,fonction,mail,commentaire ) AGAINST(\''.$recherche.'*\'IN BOOLEAN MODE)'; }
Merci beaucoup à vous tous![]()
Partager