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
- Recherche image - Guide
- Moteur de recherche 1fichier ✓ - Forum Réseaux sociaux
- Probleme recherche chaine tv tcl - Forum TV & Vidéo
- Ecran telephone cassé de l'interieur - Forum Wiko
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
Attention avec strtolower si tu es en UTF8 les accents ne seront pas pris en compte !
<?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);
}
?>