Hi,

To quickly solve your problem, can't you just load a dummy HTML page (without 
the PHP extension if possible) in each frame that display nothing but "please 
wait..." and reload itself with a meta-refresh tag at different interval (say 
1, 2 and 3 seconds)?

For the "real" problem, you should triple-check the rights on the D:\PHPTemp 
directory for the IIS user (is it on of the owner?). Also check that your D: is 
a local FAT32 or NTFS volume. 

To experiment, you could check that using the PHP's flock function works as 
expected.

Eric


-----Message d'origine-----
De : Stephan Weiher [mailto:[EMAIL PROTECTED] 
Envoyé : mercredi 13 février 2008 13:04
À : php-windows@lists.php.net
Objet : Re: [PHP-WIN] Concurrency issue on session file on harddisk

This was one of our first tries to solve the problem. Since session_start() 
is called in the index.php containing the frameset declaration, php.exe 
accesses the session file from both frames BEFORE processing any code out of 
it. So a delay contruct will only be processed when session file access is 
done :(



Greetings



Stephan Weiher





""Michael Southworth"" <[EMAIL PROTECTED]> schrieb im Newsbeitrag 
news:[EMAIL PROTECTED]
>I should preface this by saying it has been a while since I have used php
> extensively, but my suggestion would be to try putting in a delay at the
> beginning of your PHPfile, before the session_start() command (or 
> whichever
> method you choose to begin your session). As far as I can recall, the
> session needs to be initialized before any output is sent to the browser,
> but this does not mean you cannot execute a php code delay before you 
> start
> the session. This may give you enough time for the other PHP request to
> complete, freeing up the required file.
>
> A potentially more robust, but equally untested option, would be to check
> the file itself before initializing the session. The session_id will be
> available in the super variables or via session_id(). Since the file names
> for a given session are based predictably on this id, you could 
> potentially
> try to do a read access on the file.  If this fails, poll and try again or
> timeout and fail gracefully. I am not very familiar with how the 
> permissions
> on this would play out though.
>
> Those are two suggestions I could think of, hope that helps,
> -Michael Southworth
>
> On Feb 13, 2008 8:15 AM, Stephan Weiher <[EMAIL PROTECTED]> wrote:
>
>> Thanks for the answer but this won't help us anyway. We cannot enable
>> javascript on any computer in the company's network to make this issue
>> going
>> away. I'll need a way to delay the requests for one of the two frames
>> (defined in the frameset) for a tiny amount of time to prevent two 
>> php.exe
>> instances from accessing the session file at the same time. But I don't
>> know
>> how to do so. Javascript is no option for us and as far as I know HTML 
>> has
>> no such mechanism. So I need another way. Perhaps sth. that delays the
>> call
>> of php.exe - but I/O must work on this way :)
>>
>> Greetings
>> Stephan Weiher
>>
>>
>>
>> ""Jacob Kruger"" <[EMAIL PROTECTED]> schrieb im Newsbeitrag
>> news:[EMAIL PROTECTED]
>> >A 'corny' workaround might be to get something like the nav frame in 
>> >fact
>> >to
>> > then load the main frame using something like JavaScript - just a
>> > thought -
>> > since it would in fact first have rendered before the main frame was
>> > loaded.
>> >
>> > You could then also put something like a 'waiting...' notice/string in
>> the
>> > main frame in case one or two people's machines in fact rendered/loaded
>> > the
>> > two frames in the wrong order.
>> >
>> > Stay well
>> >
>> > Jacob Kruger
>> > Blind Biker
>> > Skype: BlindZA
>> > '...Fate had broken his body, but not his spirit...'
>> >
>> > ----- Original Message -----
>> > From: "Stephan Weiher" <
>> > [EMAIL PROTECTED]>
>> > To: <
>> > php-windows@lists.php.net>
>> > Sent: Tuesday, February 12, 2008 12:06 PM
>> > Subject: [PHP-WIN] Concurrency issue on session file on harddisk
>>
>> --
>> PHP Windows Mailing List (http://www.php.net/)
>> To unsubscribe, visit: http://www.php.net/unsub.php
>>
>>
> 

-- 
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to