soundofa
04-10-2006, 23:10
Вот, попытался написать более-менее поисковик на свой сайт, возникла проблема в строчке
if (strstr($sqltext,"$text")) {
Сдесь я сравниваю текст в mysql базе, с искомым словом.
Проблема в том, что если человек искал "Microsoft", а в тексте написанно "microsoft", то слово считается неподходящим =/
Собственно как отвязать поисковик от различения регистра букв?
Код целиком:
<html>
<head>
<title>Поиск</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head>
<body>
<? include("root/setup.php"); ?>
<?
//Присутствует ли в поиске спец. символ?
if (strstr($text,"<")!=false) {
echo ("Некорректный запрос. Ошибка 1.");
exit;
}
//Не пустая ли строчка?
If ($text=='') {
echo ("Некорректный запрос. Ошибка 2.");
exit;
}
else
echo("
Вы искали <b>$text</b>.<br><br>
");
$id=0;
$count=0;
$ir=0;
//получение количества строк в таблице
$count_row=mysql_query ("SELECT COUNT(*) FROM ofa_wwww");
$count_row_array= mysql_fetch_array($count_row);
$count_row_array[0]=$count_row_array[0]-1;
//Соеденяемся с MySQL базой, получаем нужную нам информацию.
for ($in=0; $in<$count_row_array[0]; $in++) {
$id++;
$myquery="select id,text,razdel from ofa_wwww";
$sel=mysql_query($myquery) or die ("Error. Please contact webmaster.");
$idd = mysql_result($sel,$id,"id");
$sqltext = mysql_result($sel,$id,"text");
$sqltitle = mysql_result($sel,$id,"razdel");
//Проверяем, есть ли в строчке таблицы ofa_wwww, искомое слово.
if (strstr($sqltext,"$text")) {
$count++;
echo("
$count.
");
echo("+<A HREF='index.php?idd=$idd'>$sqltitle</a><br>");
}
}
//Если ничего не найдено.
if ($count==0) {
echo("Ничего не найдено. Попробуйте смягчить параметры поиска.");
}
?>
</body>
</html>
P.S. сильно не пинать, я только учусь ;)
if (strstr($sqltext,"$text")) {
Сдесь я сравниваю текст в mysql базе, с искомым словом.
Проблема в том, что если человек искал "Microsoft", а в тексте написанно "microsoft", то слово считается неподходящим =/
Собственно как отвязать поисковик от различения регистра букв?
Код целиком:
<html>
<head>
<title>Поиск</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head>
<body>
<? include("root/setup.php"); ?>
<?
//Присутствует ли в поиске спец. символ?
if (strstr($text,"<")!=false) {
echo ("Некорректный запрос. Ошибка 1.");
exit;
}
//Не пустая ли строчка?
If ($text=='') {
echo ("Некорректный запрос. Ошибка 2.");
exit;
}
else
echo("
Вы искали <b>$text</b>.<br><br>
");
$id=0;
$count=0;
$ir=0;
//получение количества строк в таблице
$count_row=mysql_query ("SELECT COUNT(*) FROM ofa_wwww");
$count_row_array= mysql_fetch_array($count_row);
$count_row_array[0]=$count_row_array[0]-1;
//Соеденяемся с MySQL базой, получаем нужную нам информацию.
for ($in=0; $in<$count_row_array[0]; $in++) {
$id++;
$myquery="select id,text,razdel from ofa_wwww";
$sel=mysql_query($myquery) or die ("Error. Please contact webmaster.");
$idd = mysql_result($sel,$id,"id");
$sqltext = mysql_result($sel,$id,"text");
$sqltitle = mysql_result($sel,$id,"razdel");
//Проверяем, есть ли в строчке таблицы ofa_wwww, искомое слово.
if (strstr($sqltext,"$text")) {
$count++;
echo("
$count.
");
echo("+<A HREF='index.php?idd=$idd'>$sqltitle</a><br>");
}
}
//Если ничего не найдено.
if ($count==0) {
echo("Ничего не найдено. Попробуйте смягчить параметры поиска.");
}
?>
</body>
</html>
P.S. сильно не пинать, я только учусь ;)