Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] Wyszukiwarka
laik-php
post
Post #1





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 20.08.2009
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Było już tyle razy wałkowane na forum, ale nie ma tego czego szukam. Tak samo w Google szukałem, ale tam się powtarza. Potrzebuję zrobić skrypt wyszukiwarki. Ma być taka prosta. Mam tabelę w MySQL o nazwie portfolio a w niej id, klient, czas realizacji, tags. Są tam zapisywane tagi np. bruk, kostka, brukowa, chodnik <-- to takie przykładowe. Potrzebuję zrobić zapytanie jak ma wyglądać takie coś. Zapewne LIKE, albo coś podobnego (lepszego).
Kawałek kodu HTML:

search.php

  1. <form action="/index.php" method="get">
  2. <input type="text" name="search" value="Szukaj ..." onfocus="if (this.value=='Szukaj ...') { this.value=''; }" onblur="if (this.value=='') { this.value='Szukaj ...'; }"/>
  3. <input type="submit" value="" class="search_button">
  4. </form>

I nie wiem jak to zrobić, że po wpisaniu frazy np. zima, znajdzie mi prace z portfolio. Graficznie mniej więcej tak:

Wyniki wyszukiwania:
Firma XYZ
Czas realizacji: 2 tygodnie
Prace: Układanie chodnika

I tak powinno wyglądać parę rekordów, które zawierają te frazy. Nie proszę o gotowca (no chyba, że ktoś ma), ale o rade jak takie coś zrobić (IMG:style_emoticons/default/worriedsmiley.gif)

Z góry dziękuje (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
potreb
post
Post #2





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Możesz zastosować wyszukiwanie używając LIKE: http://webmade.org/kursy-online/wyszukiwan...-kurs-mysql.php
lub
Wyszukiwanie pełnotekstowe: http://www.php.rk.edu.pl/w/p/pelnotekstowe-wyszukiwanie/

W PhpMyAdmin masz również wyszukiwanie, zobacz sobie jak to wygląda i wtedy będziesz wiedział o co biega.

Ten post edytował potreb 7.05.2010, 16:25:21
Go to the top of the page
+Quote Post
laik-php
post
Post #3





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 20.08.2009
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Zrobiłem takie coś:
Kod
if(empty($search)) {
  echo "Wpisz frazę";
  } else {
   $result = mysql_query("SELECT * FROM portfolio WHERE tags LIKE '%$search%'");
     if($result) {
       while($row=mysql_fetch_array($result)) {
        $id       = $row["id"];
        $klient   = $row["klient"];

      echo "<p>Wyniki wyszukiwania: </p>";
      echo "<p>$klient<br/>$id</p>";
    }
  }
}


Ale wyświetla mi napis wpisz frazę. gdy wpisze do formularza (tego powyżej), robi to co powinno czyli: http://www.mojastrona.pl/index.php?search=zima ale nic nie wyświetla tylko ten napis wpisz frazę.


Pomoże ktoś (IMG:style_emoticons/default/winksmiley.jpg) (IMG:style_emoticons/default/questionmark.gif)

Ten post edytował laik-php 8.05.2010, 21:24:00
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




na pczątku:
$search = $_POST['search'];

sorki, $_GET['search'] - uzywasz metody get a nie post
Go to the top of the page
+Quote Post
laik-php
post
Post #5





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 20.08.2009
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Wielkie dzięki. Działa jak trzeba. Muszę wziąć manuala (IMG:style_emoticons/default/biggrin.gif) Plusik dla Ciebie
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 6.10.2025 - 18:44