Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> kasowanie tabeli w mysql za pomoca php
selea
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 1.01.2004
Skąd: czewa

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


(php+mysql) sklep internetowy
problem napotkalem w kasowaniu tabeli w bazie danych podczas zamykania przegladarki internetowej

skrypt polega na tym ze niezalogowany uzytkownik wklada do koszyka jakas rzecz
stawiam sesje w ktorej wartosciami sa $st=2 i $sekunda="sekunda z czasu internetowego"

nastepnie tworzy sie tabela "create table tab$sekunda" i dodaje rekord zamowionego produktu . jezeli gosc zrezygnuje z przemiotu zamawianego naciska w koszyku usun - przerywam sesje i kasuje tabele ALE...

jezeli gosc nie nacisnie klawisza usun a zamknie przegladarke to ta tabela mi zostaje i zasmieca baze danych czy istenieje jakas mozliwosc przeslanmia "drop table tab$sekunda" podczas zamykania przegladarki questionmark.gif?

Ten post edytował selea 17.09.2004, 13:34:01
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
e-Gandalf
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 195
Pomógł: 0
Dołączył: 7.07.2003
Skąd: Warszawa

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


co zrobisz przy tysiacu requestow (np. przy uzyciu apache benchmarka? ab -n 1000 http://adres) - stworzysz 1000 tabel? Przeciez to zabije Ci system...


--------------------
"(...)Zrozumienie wymagaloby od Ciebie odrobiny pokory. A dzis, w dobie
obalania autorytetu i udowadniania, ze doswiadczenie jest niepotrzebnym
balastem, to jest niemodne.(...)"
Go to the top of the page
+Quote Post
kszychu
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

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


Użyj tabel tymczasowych: CREATE TEMPORARY TABLE .....


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
rogrog
post
Post #4





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

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


1. a czy na pewno nie może się zdażyć, że dwóch lub więcej użytkowników wejdzie na stronę w tej samej sekundzie i ich tabele się zmiksują or sth like that?

2. tak jak mówi e-Gandalf, okropnie nieefektywne. Możesz użyć tabel tymczasowych, ale najlepiej chyba używać jednej tabeli, w której będzie zapisany przy każdym rekordzie identyfikator sesji. A tak w ogóle, czy nie możesz przekazywać koszyka w sesji ?

3. co do twojego pytania - jeżeli chcesz coś wywołać przy zamykaniu przeglądarki, musiałbyś zastosować JavaScriptowe onUnload, ale nigdy nie możesz ufać temu rozwiązaniu - akcja niekoniecznie musi być wykonana.


--------------------
Go to the top of the page
+Quote Post
selea
post
Post #5





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 1.01.2004
Skąd: czewa

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


Cytat(e-Gandalf @ 2004-09-17 16:58:42)
co zrobisz przy tysiacu requestow (np. przy uzyciu apache benchmarka? ab -n 1000 http://adres) - stworzysz 1000 tabel? Przeciez to zabije Ci system...

ale nie ma takiej opcji bo tabel moze byc tylko 60 (poniewaz minuta ma tylko 60 sek :]) a jest sprawdzanie czy istenieje taka tabela. to sa tymczasowe tabele tworzone tylko na czas obecnosci uzytkownika na stronie wiec podczas korzystania z witryny 5 uzytkownikow i kazdy z nich wrzuci produkt do koszyka (ale nie zlozy zamowienia ) to zostanie utworzone 5 tabel snitch.gif

nie wiem czy to dobre rozwiazanie ale takie mi wpadlo do glowy :]
Go to the top of the page
+Quote Post
silent
post
Post #6





Grupa: Zarejestrowani
Postów: 127
Pomógł: 0
Dołączył: 18.08.2004
Skąd: Jastrzębie Zdrój

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


A jeśli będziesz miał np 200 użytkowników? Będziesz pisał cały sklep od nowa?

Poczytaj o sesjach.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 10:59