Mam oto taki skrypt, tylko nie jest zrobiony tak jak by mi pasowało.. I jak by ktoś mogł coś podpowiedzieć bardzo bym był widzęczny.. A więc potrzebuje żeby wyniki wyszukania były na mojej stronie index.php naprzyklad w newsach itp. A nie na odzielnej stronie. I jak wynik sie znajdzie, to żeby automatczynie hiperłączył do danego newsa.
forma na index.php
[HTML]
pobierz,
plaintext - <form action="search.php" method="post">
- Wpisz wyszukiwany produkt: <input type="text" name="phrase" />
- <input type="submit" value="Szukaj!" />
- </form>
[HTML]
pobierz,
plaintext i search.php
<?php //na katalogu 2
// program wyszukiwarki - search.php
// wy?wietlenie nagłówka
echo'<h2>Wyniki wyszukiwania</h2>'; // usunięcie niepotrzebnych białych znaków
$_POST['phrase']=trim($_POST['phrase']); // sprawdzenie, czy użytkownik wpisał dane
if(empty($_POST['phrase'])) // je?li nie, to wy?wietl komunikat i zakończ działanie skryptu
die('Formularz wypełniony niepoprawnie! Nie można wy?wietlić wyników wyszukiwania!'); // je?li jednak dane s? wpisane poprawnie
else
{
// poł?czenie z baz? danych, NIE ZAPOMINJ USTAWIĆ WŁASNYCH DANYCH!
// skonstruowanie zapytania
// zwróć uwagę na operator Like - to on jest sercem całej aplikacji. Pozwala wyszukać dany ci?g w bazie danych
// jak zapewne zauważyłe?, przed fraz? i po niej umieszczam znaki procenta %
// ten znak symbolizuje dowolny inny ci?g znaków, więc jest niezbędny do skutecznego wyszukiwania
// połaczenie operatorem Or pozwala na wyszukiwanie danego ci?gu zarówno w nazwie, jak i opisie produktu
// UWAGA! Tutaj też nie zapomnij ustawić swoich danych!
$query="Select nazwa_produktu From produkt Where nazwa_produktu Like '%{$_POST['phrase']}%'";
// wysłanie zapytania do bazy danych
// ustalenie ilo?ci wyszukanych obiektów
// wyswietlenie ilo?ci wyszukanych obiektów
echo'Znaleziono: '.$obAmount.'<br /><br />'; // wy?wietlenie wyników w pętli
for($x=0;$x<$obAmount;$x++)
{
// przekształcenie danych na tablicę
// wy?wietlenie numeru identyfikacyjnego
// wy?wietlenie nazwy produktu
}
}
// zamknięcie poł?czenia
// koniec aplikacji
?>
Ten post edytował napstergucio124 31.08.2009, 17:44:55