Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]Ograniczenie zapytań do bazy - buforowanie wyników
Jarod
post
Post #1





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

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


Mam następujący problem. Mam skrypt, który pobiera z bazy rekordy (około 50) i wyświetla je wiersz pod wierszem. Po lewej stronie jest link - po jego naciśnięciu strona się przeładowuje i jest formularz edycji. Jak damy zapisz, dane się aktualizują w bazie i jesteśmy przekierowywani na stronę główną (pobierane jest znowu 50 rekordów i wyświetlane wiersz pod wierszem). Muszę zrobić bez przeładowywania (żeby nie pobierać za każdym razem 50 rekordów). Do głowy wpadło mi takie rozwiązanie:

Pobierać z bazy do tablicy dane tylko jeden raz (przy pierwszym ładowaniu strony). A przy edycji wybranego wiersza, update do bazy i edytowanych danych w tablicy a następnie powrót na stronę główną i wyświetlanie danych już z tablicy (bez ponownego pobierania z bazy).

Problem w tym, że nie wiem jak najlepiej taką tablicę przechowywać, żeby jej nie stracić przy przejściu na inną stronę? Umieścić w sesji danego użytkownika? Inny problem to jeszcze będę musiał sprawdzić czy inny użytkownik czegoś nie edytował a jeśli tak to pobranie tych nowych (zmienionych) danych z bazy..

Czy to dobry pomysł?

Ten post edytował J4r0d 27.07.2006, 12:46:17
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





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




Cytat
Chodzi mi o sytuacje, że dwóch pracowników edytuje ten sam rekord (albo inny) i jednocześnie przesyłają nowe dane do zapisu. Skrypt aktualizuje dane w bazie, kasuje plik z cachem i następuje powrót na stronę główną. Na stronie głównej sprawdzane jest czy plik istnieje (ponieważ już nie istnieje) następuje odczyt z bazy nowych danych i zapis do chache. Możemy zablokować na czas zapisu plik ale gdzieś czytałem, że tego typu operacje nie są bezpieczne. Jak się zabezpieczyć przed sytuacją, gdy dwóch użytkownik w tym samym czasie zapisuje chache do pliku, albo gdy jeden edytował rekord i usuwa cache a drugi właśnie chce zapisać chace..?
Opisana przez Ciebie sytuacja jest troche "nieteges"* (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Edytujesz rekord, czyscisz cache. Na stronie glownej ktos go odswierza i cache juz jest. W tym samym czasie ktos edytuje rekord, czysci dopiero co odswierzony cache (i bardzo dobrze) i na stronie glownej ktos go znowu odswierzy. Wszystko ok. A jesli chodzi ci o trafienie zapisu do pliku w tym samym czasie... hmmm, a w totka trafiles kiedys szostke? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

ps: przenosze na php

---------------------
nieteges* - to znaczy, ze jest nieteges
Go to the top of the page
+Quote Post

Posty w temacie
- J4r0d   [php]Ograniczenie zapytań do bazy - buforowanie wyników   27.07.2006, 12:32:30
- - Cysiaczek   1. Możesz trzymać dane zserializowane np w sesji (...   27.07.2006, 12:37:23
|- - J4r0d   Cytat(Cysiaczek @ 27.07.2006, 11:37 ) 1. ...   27.07.2006, 12:48:13
- - kossa   Moim zdaniem zapytanie na 50 rekordach jeśli serwe...   27.07.2006, 12:39:16
- - nospor   Ja ostatnio jakis monotematyczne jestem, ale do te...   27.07.2006, 12:39:50
- - Cysiaczek   1. W manualu sa funkcje serialize() i unserialize...   27.07.2006, 12:53:40
- - nospor   CytatCzy trudno jest wykonać cachowanie danych? (z...   27.07.2006, 12:56:50
|- - J4r0d   Cytat(nospor @ 27.07.2006, 11:56 ) Ale je...   27.07.2006, 13:06:34
- - nospor   CytatW sumie masz rację. Ale czy to nie bedzię dłu...   27.07.2006, 13:10:08
|- - J4r0d   Cytat(nospor @ 27.07.2006, 12:10 ) Nie sa...   27.07.2006, 13:56:47
- - nospor   "podoba" mi sie ten kawalek. jest bardzo...   27.07.2006, 14:13:56
|- - J4r0d   Cytat(nospor @ 27.07.2006, 13:13 ) ...   27.07.2006, 22:17:57
- - cadavre   A zwyczajnie JSem? [HTML] pobierz, plaintext <a...   27.07.2006, 23:43:09
|- - J4r0d   Cytat(cadavre @ 27.07.2006, 22:43 ) A zwy...   28.07.2006, 05:21:35
- - nospor   CytatChodzi mi o sytuacje, że dwóch pracownik...   28.07.2006, 08:23:32
|- - J4r0d   Cytat(nospor @ 28.07.2006, 07:23 ) Opisan...   28.07.2006, 11:57:35
- - nospor   CytatTy edytujesz pierwszy a ja drugi. Dajesz zapi...   28.07.2006, 12:15:26
- - J4r0d   Czy przy zapisie do pliku należy blokować do niego...   28.07.2006, 14:51:23


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: 27.12.2025 - 04:21