Новичок
Покинул форум
Сообщений всего: 5
Дата рег-ции: Окт. 2009
Помог: 0 раз(а)
|
Всем привет. Есть самописный движок. Есть файл отвечающий за поиск search.php. Есть артикул товара, например 12a2hr-12 и есть артикул 12a2hr-25. При поиске выдает два результата. И тот и тот. Как делать поиск строки целиком? Т.е.е если я ввел 12a2hr-12, то и результат выдачи был соответственно один 12a2hr-12. Товаров много и у всех похожий артикул....и в выдаче идет куча похожих товаров...Необходимо реализовать поиск строки целиком. Но сделать не могу. За поиск артикула товара отвечает type1, здесь и прописывается артикул товара в базе mysql. Подскажите пожалуйста. Помогите дописать поиск. Спасибо.
PHP:
скопировать код в буфер обмена
<?PHP function print_cat_path($id) { $res = mysql_query("select idp,path from grandi_catalog where id = '$id'"); if ($path) { $pth = $path."/".$pth; } else { $pth = $id."/".$pth; } $res = mysql_query("select idp,path from grandi_catalog where id = '$idp'"); } return $pth; } ?> <table width="100%"> <?PHP if (issets($str)) { $all_counter = 0; $sql = '( SELECT 1, isprod, id, name, concat( string1, string2, string3, string4, string5, string6, string7, string8, string6, string10 ) , concat( text1 ) , ' . ' MATCH ( name, string1, string2, string3, string4, string5, string6, string7, string8, string6, string10, text1 )' . ' IN BOOLEAN' . ' MODE ) AS sort' . ' FROM grandi_catalog' . ' WHERE MATCH ( name, type1, string1, string2, string3, string4, string5, string6, string7, string8, string6, string10, text1 )' . ' IN BOOLEAN' . ' MODE ) and hide != 1 ' . ' GROUP BY name )' ; $j = 1; if ($num == 1){ $link = "/".print_cat_path($id); } else if($num == 2){ $link = "/".$info."/"; } else if($num == 3) { if ($isprod == 1) { $link = "/news/".$id."/"; } } ?> <tr> <td valign="top"><strong> <?= sprintf("%02d", $j) ?> </strong></td> <td valign="top" width="100%"> <?PHP if ($info || $num != 2) { echo "<a href=\"".$link."\">".eregi_replace($str, "<font color='#00214C'>".$str."</font>", $name)."</a><br>"; } while(ereg(" ",$text)){ } $text = explode(" ",brp_repl ($text)); $string = ""; for($f=0; $f%10 != 9 and isset($text[$f]); $f++) $string .= $text[$f]." "; while($string){ $tmp .= '...'.eregi_replace($str,"<font color='#00214C'>".$str."</font>",$string).'...'; } if($tmp) print $tmp."<br>"; $tmp = ""; $string = ""; if($text[$f]) $string = $text[$f]." "; $f++; for( ; $f%10 != 9 and isset($text[$f]); $f++) $string .= $text[$f]." "; } ?> <a href="<?=$link?>">http://<?= $HTTP_HOST.$link?></a> </td> </tr> <tr><td colspan="2"> </td></tr> <?PHP $j++; } $part_old = $part; $j++; $all_counter = $all_counter + $j; if ($all_counter == 2) { ?> <tr><td colspan="2" align="center">По Вашему запросу ничего не найдено. Попробуйте сформулировать свой запрос по-другому.</td></tr> <?PHP } ?> <?PHP } ?> </table>
|