Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][js]Zapamiętywanie danych.
Forum PHP.pl > Forum > Przedszkole
Mike122
Chciałbym zrobić cos takiego jak jest w wyszukiwarce gogle. Chodzi mi o to, że np. jak wejdę na stronę http://google.pl i wpiszę w formularzy Polska i jak kliknę na Grafika to formularz jest wypełniony, czyli dalej znajduje się tam tekst grafika (W czasie tej operacji nie przyciskam szukaj). Proszę o pomoc. Przy okazji jak zrobić żeby najbardziej trafny wynik skrypt php dawał na początek, baza jest MySQL biggrin.gif
batman
W linkach WWW, Grafika, itd przypisujesz do akcję onclick, która zapamięta w ciastku wartość wpisaną do formularza. Następnie po załadowaniu strony odczytujesz ciastko i wpisujesz je do pola tekstowego.

Co do wyszukiwania, to sprawdź funkcje match i against w MySQL. Chyba o to Ci chodzi.
Mike122
A ktoś może mi podać jak ten skrypt wygląda bo ja jedyne co znalazłem w źródle google to:
Kod
<script><!--
function qs(el){if(window.RegExp&&window.encodeURIComponent){var ue=el.href,qe=encodeURIComponent(document.f.q.value);if(ue.indexOf("q=")!=-1){el.href=ue.replace(new RegExp("q=[^&$]*"),"q="+qe);}else{el.href=ue+"&q="+qe;}}return 1;}
//-->
</script>
oraz koło linków
Kod
onClick="return qs(this);"

Jednak coś nie dziła to mi sad.gif
batman
Pisane z palce, więc nie dam głowy, że zadziała

Kod
// funkcja wywolywana w momencie klikniecie w link
function saveParams() {
    /*
    zamiast tego mozesz wyciagac dane z pola tekstowego przy pomocy document.forms
    */
    var el = document.getElementById("nazwa_inputa");
    document.cookie = "search_str=" + el.value;
}


Przy pomocy php wstawiasz do inputa wartość ciastka w taki sposób:

  1. <input type="text" name="nazwa_pola" value="<?=$_COOKIE['search_str']?>" />
Mike122
Niestety ~batman coś ten Twój skrypt nie dziła, czekam na dalszą pomoc kogoś.

A powinno być chyba:
  1. <input type="text" name="nazwa_pola" value="<? echo $_COOKIE['search_str']; ?>" />|

A JS nie znam więc nie wiem czy tam jest wszytko dobrze dry.gif
batman
A dodałeś do linków ("a href-ów") onclick="saveParams();" ?

Jeśli getElementById nie działa to możesz zamiast niego dać:

Kod
var el = document.forms["nazwa_formularza"].nazwa_inputa;


A zapis:

  1. <?=$_COOKIE['search_str']?>


Jest identyczny z

  1. <? echo $_COOKIE['search_str']; ?>


Trzeba tylko w php.ini ustawić short tags na on. (Co do nazwy parametru, to nie jestem pewnien)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.