Reply to Re: [PHP] DB access and sessions

Your name:

Reply:


Posted by Tyler Kiley on 08/18/05 01:25

Since you can't be sure to be notified when a user stops editing a
page, whatever solution you choose will probably involve some sort of
timeout-based system. (e.g. when someone starts editing a page, set a
"last_opened" time field on the resources, and when someone else tries
to edit the same page, check to see if "last opened" is in the last 30
mins). If you combine this with an ajax/iframe reload, you can be
much more precise (e.g. while someone is editing a document, have
their browser hit a designated url every 60 seconds; when the repeated
hits stop, you know they're done)

Since no such system is absolutely positively foolproof, you'll
probably want to look into optimistic locking if you want to guarantee
that no one's changes are accidentally overwritten.

Tyler


On 8/17/05, Bret Walker <bret-walker@northwestern.edu> wrote:
> Hello-
>
> I'm developing a web-based system whereby users can edit documents and
> then e-mail the documents to selected recipients.
>
> The "documents" are comprised of the data from several MySQL fields.
>
> I want to make sure that two people don't edit a document at the same time.
>
> My users log in via a script that starts a session.
>
> My initial idea was to have a field to denote file access (1 for "in
> use" 0 for available). The problem with this would be if a user
> navigates to a different page or closes the browser window without
> clicking a "save" or "close" button (which would execute a query to set
> the in_use field to 0).
>
> I'm sure others have dealt with the issue of exclusive access to a MySQL
> resource. I've looked into InnoDB transactional support, but that
> doesn't seem to be what I need, since I'm not overly concerned about
> simultaneously access, just simultaneous editing.
>
> How can I ensure the "document" isn't accessed by two people at the same
> time?
>
> Thanks,
> Bret
>
>
>

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация