Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne][PHP]Przekierowanie 301 a kod Analytics
Forum PHP.pl > Forum > Przedszkole
Demoneos
Czy któraś z tych metod przekierowania 301 pozwoli, żeby na stronie z której następuje przekierowanie zadziałały statystyki (tzn. te z Analytics)?
morbic
Chodzi o stronę, na której występuje przekierowanie? Chyba tylko metoda z JavaScript, i to dałbym setTimeout() na 2-3 sekundy dla bezpieczeństwa, żeby cudo Google się zdążyło załadować.
Demoneos
Tak, chodzi o stronę na której ma nastąpić przekierowanie, z tym że powinno ono wykonywać się natychmiast, bez żadnych opóźnień. Pomyślałem, że rozwiązaniem może być zapis do bazy danych. Stworzę tabelę, która ma tylko jedną komórkę - licznik odwiedzin strony z której następuje przekierowanie. Ilekroć ktoś będzie wchodził na tą stronę, wartość z tej tabeli będzie pobierana (zapytaniem select) i zwiększana o 1 (zapytaniem insert), a pod tymi zapytaniami będzie przekierowanie - coś takiego:
  1. select
  2. $licznik++;
  3. insert
  4. Header( "HTTP/1.1 301 Moved Permanently" );


Miałbym tylko dwa pytania:
1. Czy skrypt zaczeka z przekierowanie, aż wykona się zapytanie insert? Bo może się tak zdarzyć, że serwer będzie miał laga i zapytanie będzie długo trwać i co wtedy - skrypt się zatrzyma, czy wykona funkcje PHP które są niżej w kodzie - tzn. w tym przypadku funkcje Header do przekierowania 301?
2. Może się chyba zdarzyć, że przy "jednoczesnym" odczycie licznika z komórki tabeli kilka osób odczyta tą samą wartość, a więc po ich odwiedzinach wartość tego licznika zwiększy się o ilość tych osób, które "jednocześnie" odczytały tą samą wartość, czy tylko o 1?
Fifi209
Cytat(Demoneos @ 16.07.2011, 22:03:18 ) *
Tak, chodzi o stronę na której ma nastąpić przekierowanie, z tym że powinno ono wykonywać się natychmiast, bez żadnych opóźnień.

.htaccess
Cytat(Demoneos @ 16.07.2011, 22:03:18 ) *
zwiększana o 1 (zapytaniem insert)

a nie update?
Cytat(Demoneos @ 16.07.2011, 22:03:18 ) *
1. Czy skrypt zaczeka z przekierowanie, aż wykona się zapytanie insert?

Dlatego nagłówek daj przed zapytaniem, użytkownik przeleci na inną stronę a skrypt i tak się wykona do końca.

Cytat(Demoneos @ 16.07.2011, 22:03:18 ) *
2. Może się chyba zdarzyć, że przy "jednoczesnym" odczycie licznika z komórki tabeli kilka osób odczyta tą samą wartość, a więc po ich odwiedzinach wartość tego licznika zwiększy się o ilość tych osób, które "jednocześnie" odczytały tą samą wartość, czy tylko o 1?

Rozmawiamy o bazie danych czy plikach? Jeżeli o bazie to nie masz się czym martwić. Zawsze robisz update wartosc = aktualna + 1;
Demoneos
Oczywiście chodziło o update smile.gif
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.