ForumCała strona

Nawigacja

Aktualnie online

Gości online: 7

Użytkowników online: 0

Łącznie użytkowników: 25,386
Najnowszy użytkownik: Hisfatt

Logowanie

Nazwa użytkownika

Hasło



Zarejestruj się

Odzyskaj hasło

Shoutbox

Musisz zalogować się, aby móc dodać wiadomość.

JazOOn
14.05.2024 18:31:17
Znowu serwer down?

Zbigniew@
28.04.2024 21:33:51
Nareszcie udało się .V9 Document checking completed. No errors or warnings to show.

JazOOn
27.04.2024 21:35:25
Jazda. Udało się. Firma rusza.

Zbigniew@
01.04.2024 12:28:45
Wszystkiego najlepszego z okazji świąt.

JazOOn
28.02.2024 19:25:31
ja zostałem przy fusionie ale nazywa się 360. Projektowanie i druk 3d...

Pobierz nową wersję
Pobierz podręcznik
Zobacz inne oficjalne Supporty
Statystyki supportu
PHP-Fuson PL na Facebooku

RSS

Polecamy hosting SferaHost.pl

Zobacz temat

 Drukuj temat
Wyszukiwanie na podstawie pierwszych liter wyrażenia
michal_86
Witam, mam nadzieje że ktoś będzie mi mógł pomóc.

Mam kod:
Pobierz kod źródłowy  GeSHi: PHP
  1. $zapytanie = "SELECT Lokalizacja, tytul, id, opis FROM pow5 WHERE match(Lokalizacja, opis) AGAINST('$szukaj' IN BOOLEAN MODE) ORDER BY Lokalizacja ";
Zinterpretowano w sekund: 0.012, wykorzystano GeSHi 1.0.8.10



W bazie danych w jednej z przeszukiwanych kolumn mam słowo "warszawy" . Gdy wpiszę warsz. warszaw w wyszukiwarce wszystko ładnie wychodzi. Natomiast gdy wpiszę "warszawa" nic nie znajduję.

Szukałem w necie ale ani zmienna % ani * nic nie dają.

Dlatego wpadłem na inny pomysł - może nico prymitywny ale skuteczny - i chciałbym o niego zapytać:


Czy da się wyszukiwać jedynie na podstawie pierwszych 4 liter - ustawiam, że mimo dowolnej długości jest wpisana fraza, do bazy idzie zapytanie jedynie 4 pierwszych litery. Jeśli tak - to jak to zrobić??

pozdr!


PW od moderatora:
  1. Zmiana nazwy tematu - Pieka 13.02 - 00:45
  2. Przeniesienie tematu - Pieka 13.02 - 00:45

Edytowane przez michal_86 dnia 13.02.2010 00:59:07
 
Wścibski Gość
Dodany dnia 16.05.2024 09:51:21
Pan Kontekstualny

Postów: n^x
Data rejestracji: Zawsze

Polecamy hosting SferaHost.pl
IP: localhost  
Szapko
Nie bardzo rozumiem o co Ci chodzi, ale może to pomoże:
http://forum.php....pid=183891
 
bartek124
Jeśli dobrze zrozumiałem post, to stwierdzam, że zapytanie działa dobrze. Fraza warsz wyszuka warsz, warszaw, warszawy, warszawski, warszawa, ale fraza warszawa nie może zwrócić wyniku zawierającego warszawy. Chcesz po pierwszych 4 literach? Skróć frazę za pomocą funkcji substr(), tak będzie najprościej.
userbar_bartek124_net.png mw.gif Nie pomagam na komunikatorach oraz PW!
 
www.bartek124.net
michal_86
Witam,

Wymyśliłem coś takiego :

Pobierz kod źródłowy  GeSHi: PHP
  1. $szukaj = $_POST['szukaj'];
  2. if { (strlen($szukaj) > 4)
  3. $skroc= substr("$szukaj", 4, 0);
  4. }
Zinterpretowano w sekund: 0.012, wykorzystano GeSHi 1.0.8.10


Pytaniea: Czy będzie mi to działać? Czy będzie skracać wszystkie wyrażania dla full-text searching np: warszawa ulica marszałkowaska i skróci mi wars ulic mars ?

Jak mam to połączyć z
Pobierz kod źródłowy  GeSHi: PHP
  1. $zapytanie = "SELECT Lokalizacja, tytul, id, opis FROM pow5 WHERE match(Lokalizacja, opis) AGAINST('$szukaj' IN BOOLEAN MODE) ORDER BY Lokalizacja ";
Zinterpretowano w sekund: 0.012, wykorzystano GeSHi 1.0.8.10
Czy coś muszę zmieniać - np zamiast $szukaj dać $skroc??

Pozdr
Edytowane przez michal_86 dnia 13.02.2010 16:26:17
 
bartek124
Ach, tak ma to działać.

Proszę:
Pobierz kod źródłowy  Rozwiń Kod źródłowy PHP


Podstawiasz odpowiedni ciąg na początku np $string = $_POST['costam'];

a później zmienną $string wykorzystujesz w zapytaniu;
Edytowane przez bartek124 dnia 13.02.2010 16:41:55
userbar_bartek124_net.png mw.gif Nie pomagam na komunikatorach oraz PW!
 
www.bartek124.net
michal_86
Ok dzięki - spróbuje i dam znać jakie efekty.

Pozdr!

Wiadomość doklejona:
BARDZO CI DZIĘKUJĘ.

Działa lepiej niż przypuszczałem!

Na prawdę mi pomogłeś!

Pozdrawiam serdecznie.
Edytowane przez Pieka dnia 13.02.2010 20:35:05
 
Przejdź do forum:
Created by Arox Copyright (C) 2004
Copyright (C) 2004 - 2018 Ekipa PHP-Fusion.pl