Skocz do zawartości

Ostatnio wyszukiwane


Rekomendowane odpowiedzi

Witam.

Kombinowałem sobie jak pokazać ostatnio wyszukiwane, generlanie miało być prosto ale namieszałem, może ktoś mnie wesprze i poprawdzi właściwą drogą.

W pliku search.php zaraz po ' mini_magic($tpl[ads2]);'

			$czego_szukam=$_GET[szukaj];
		$czego_szukam2=str_replace(" ", '+', $czego_szukam);
		//$dane2="<a href=index.php?a=search&szukaj=$czego_szukam2 class=out_link>$czego_szukam</a><hr>\n";

		// przypisanie zmniennej $file nazwy pliku 
		$file="baza.txt"; 
		// uchwyt pliku, otwarcie do odczytu i dopisania 
		$fp=fopen("$file", "r+"); 
		// dodanie do zmiennej dane poprzedniej zawartości pliku 
		$dane=$dane.fread($fp, filesize($file)); 
		// ustawienie kursora na początku pliku 
		rewind($fp); 
		// blokada pliku do zapisu 
		flock($fp, 2); 
		// zapisanie danych do pliku 
		// fwrite($fp, $dane2); 
		// odblokowanie pliku 
		flock($fp, 3); 
		// zamknięcie pliku 
		fclose($fp);

Generalnie do pliku miało mi wywalać gotowe linie z linkami, no niby było ok, ale coś sobie nie radzi z Polskimi znakami.

index.php?a=search&szukaj=szukane+słowo >> to praktycznie to samo co wyszukiwanie bo zwraca nam to samo

w momencie zapisu do pliku i wyświetlania sypie się coś

ewentualnie kto ma php w jednym palcu może poprostu w pliku trzymać która jest wyszukiwana $_GET[szukaj];

i pytanie, jak zapisać w pliku np. tylko 10 linii a jeżeli ktoś szuka czegoś nowego to dodaje nową liniję a ostatnią usuwa, niestety w google nie znalazlem.

drugie pytanie, wyświetlanie, bo słowo którego szukaliśmy można bez problemu zapisać w tym pliku, jak to wyśweitlać prawidłowo aby montować z tego linki :pisze:

pozdro

Odnośnik do komentarza
Udostępnij na innych stronach

witam

sprawdz taki kod, jesli masz krzaczki zamiast polskich liter - problem z kodowaniem.

$lines = array();

if (file_exists('baza.txt'))
{
$lines = file('baza.txt');
$last = sizeof($lines);
if ($last == 10 ) unset($lines[9]);
}

$lines = array_reverse($lines);
$lines[]= "<a href=\"index.php?a=search&szukaj=" . stripslashes($_GET['szukaj'])  ."\" class=out_link>" . stripslashes($_GET['szukaj']) . "</a><br>\n";
$lines = array_reverse($lines);

$fp = fopen('baza.txt', 'w');
fwrite($fp, implode('', $lines));
fclose($fp);

Odnośnik do komentarza
Udostępnij na innych stronach

dopiero dziś miałem czas, skrypt działa prawie idealnie

problem jest jeden, bo powilea zapis do pliku, tzn wpisuje dwa razy to czego szukałem :) może poprostu w złym miejscu w kodzie to wstawiłem dlatego mam taki efekt

pomyślimy zobaczymy

aha no i pozostaje problem z polskimi znakami :) ale powiedzmy że w tym momencie jest najmniej ważny ;)

// hm, dziwne, na początku coś wywałalo po dwa razy, ale teraz już nie ma tego problemu ;)

Odnośnik do komentarza
Udostępnij na innych stronach

wyglada na to, ze wyswietlanie wynikow wyszukiwania masz zakodowane w UTF i dlatego tez zapisuje do pliku krzaczki.

sprobuj dodac na poczatku search.php kod konwertujacy z utf na iso

$iso2utf = array(
"\xb1" => "\xc4\x85", "\xa1" => "\xc4\x84",
"\xe6" => "\xc4\x87", "\xc6" => "\xc4\x86",
"\xea" => "\xc4\x99", "\xca" => "\xc4\x98",
"\xb3" => "\xc5\x82", "\xa3" => "\xc5\x81",
"\xf3" => "\xc3\xb3", "\xd3" => "\xc3\x93",
"\xb6" => "\xc5\x9b", "\xa6" => "\xc5\x9a",
"\xbc" => "\xc5\xba", "\xac" => "\xc5\xb9",
"\xbf" => "\xc5\xbc", "\xaf" => "\xc5\xbb",
"\xf1" => "\xc5\x84", "\xd1" => "\xc5\x83");

$tab_conw = array_flip($iso2utf);

$_GET[szukaj] = strtr($_GET[szukaj], $tab_conw);

zrodlo https://blog.czestki.net/programowanie-webo...kcji-iconv.html

Odnośnik do komentarza
Udostępnij na innych stronach

ma to dzialac tak jak chcesz, a w jaki sposob to juz mniejsze znaczenie:) ten kod co podales zapisze do pliku linka, jezeli nie bylo wczesniej takiego samego wyszukiwania. z tym ze nie mozesz szukac w/g $_GET, a w/g lancucha ktory zapisujesz do pliku.

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności