Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] Transakcje
Forum PHP.pl > Forum > Przedszkole
Puzi
Witam,
Mam pewien problem z transakcjami... Mam skrypt i chcę go udostępnić spoleczności abym mogła sobie go testować przed zakupem. I chcę aby wykonane przez nich akcje w tym skrypcie nie zapisywały się w bazie danych a były widoczne podczas trwania sesji u danego użytkownika. Muszę to zrobić na transakcjach w MySQL. Do tego używam stałego połączenia z bazą danych.
Próbuję to zrobić tak:
  1. <?php
  2. mysql_pconnect('localhost', 'root', '******');
  3.  
  4. if(!$_SESSION['1234'])
  5. {
  6.    $_SESSION['1234'] = session_id();
  7.    mysql_query("START TRANSACTION");
  8. }
  9. ?>


Niestety takie rozwiązanie nie działa.
I chciałbym prosić o pomoc w rozwiązaniu tego problemu i o ewentualne wskazówki.
Pozdrawiam
blooregard
Tabele tymczasowe ?
Puzi
Próbowałem je użyć ale mi one nie działały... Muszę to zrobić na transakcjach
dr_bonzo
A nie prosciej co jakis czas odswiezac baze z dumpu?
nospor
@puzi nie da sie. chocby z tak prostego powodu, ze jak jeden rozpocznie tranzakcje i jej nie zamknie, to drugi nic nie wykona.

Takie rzeczy robi sie tak: trzymasz jakąś domyslna baze w zapytaniach. Dajesz ludkom serwis do testowania i niech robią co chcą. A kazdego wieczoru odpala sie skrypt, ktory przywracą tę domyslna baze.
Puzi
No tak... ale wtedy każdy użytkownik może pisać co chce i mogą być to jakieś bluzgi na mnie na kogoś... a tego chcę uniknąć.
nospor
skoro wystawiasz serwis do testow to czego oczekujesz? Napisz ze nie odpawiadasz za wpisy dzieci neo i po sprawie.

przeciez co noc bedzie przywraca domyslna baza i smieci znikna
Puzi
Jest jeszcze jeden sposób... tworzyć tabele sesyjne, czyli taki że w nazwie tabeli jest ID sesji i dorobić do tego CRONa, który będzie po pewnym czasie usuwał nieaktywne sesje.. tylko czy to jest optymalne i wydajne?? Bo jak w jednej chwili będzie dużo osób to baza będzie musiała utworzyć nowe tabele tyle razy ile jest użytkowników...
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.