Problème de casse recherche PHP
marseillais
-
Profil bloqué -
Profil bloqué -
Bonsoir,
j'ai un moteur de recherche php sur mon site mais voila si je recherche abc et que le fichier est aBc, cela ne fonctionnera pas.
mon code est:
Quelqu'un aurait-il une solution a mon problème?
merci d'avance
j'ai un moteur de recherche php sur mon site mais voila si je recherche abc et que le fichier est aBc, cela ne fonctionnera pas.
mon code est:
<?php
$d = dir("./uploads");
if(isset($_POST['submit']) AND !empty($_POST['mot'])){
$mot = trim($_POST['mot']);
while($entry = $d->read()) { preg_match("#($mot+?)#s", $entry, $new);
$data = trim($new[1]);
if (!empty($data)) echo '<a href="download.php?objet='.$entry.'">'.$entry.'</a><br />';
} $d->close();
}
?>
Quelqu'un aurait-il une solution a mon problème?
merci d'avance
A voir également:
- Problème de casse recherche PHP
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Expert php - Télécharger - Langages
- Recherche photo - Guide
- Historique de recherche - Guide
- Moteur de recherche 1fichier ✓ - Forum Réseaux sociaux
5 réponses
Je pense que ton probleme vient de ton expression régulière preg_match("#($mot+?)#s", $entry, $new);
#($mot+?)#s : le modificateur s permet de contenir les sauts de ligne, je te conseille plutôt de le remplacer par i -> #($mot+?)#i qui permet de ne pas tenir compte de la casse.
Toine
#($mot+?)#s : le modificateur s permet de contenir les sauts de ligne, je te conseille plutôt de le remplacer par i -> #($mot+?)#i qui permet de ne pas tenir compte de la casse.
Toine
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
<?php
function strtolower_utf8($string){
$convert_to = array(
"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u",
"v", "w", "x", "y", "z", "à", "á", "â", "ã", "ä", "å", "æ", "ç", "è", "é", "ê", "ë", "ì", "í", "î", "ï",
"ð", "ñ", "ò", "ó", "ô", "õ", "ö", "ø", "ù", "ú", "û", "ü", "ý", "?", "?", "?", "?", "?", "?", "?", "?",
"?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?",
"?", "?", "?", "?"
);
$convert_from = array(
"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U",
"V", "W", "X", "Y", "Z", "À", "Á", "Â", "Ã", "Ä", "Å", "Æ", "Ç", "È", "É", "Ê", "Ë", "Ì", "Í", "Î", "Ï",
"Ð", "Ñ", "Ò", "Ó", "Ô", "Õ", "Ö", "Ø", "Ù", "Ú", "Û", "Ü", "Ý", "?", "?", "?", "?", "?", "?", "?", "?",
"?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?",
"?", "?", "?", "?"
);
return str_replace($convert_from, $convert_to, $string);
}
?>
function strtolower_utf8($string){
$convert_to = array(
"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u",
"v", "w", "x", "y", "z", "à", "á", "â", "ã", "ä", "å", "æ", "ç", "è", "é", "ê", "ë", "ì", "í", "î", "ï",
"ð", "ñ", "ò", "ó", "ô", "õ", "ö", "ø", "ù", "ú", "û", "ü", "ý", "?", "?", "?", "?", "?", "?", "?", "?",
"?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?",
"?", "?", "?", "?"
);
$convert_from = array(
"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U",
"V", "W", "X", "Y", "Z", "À", "Á", "Â", "Ã", "Ä", "Å", "Æ", "Ç", "È", "É", "Ê", "Ë", "Ì", "Í", "Î", "Ï",
"Ð", "Ñ", "Ò", "Ó", "Ô", "Õ", "Ö", "Ø", "Ù", "Ú", "Û", "Ü", "Ý", "?", "?", "?", "?", "?", "?", "?", "?",
"?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?",
"?", "?", "?", "?"
);
return str_replace($convert_from, $convert_to, $string);
}
?>