Well, there are a couple ways to do it. One would be to use the [man]flush[/man] function to actually flush the buffer to the browser and then sleep.
<?php
echo 'Something for something or someone goes here ...';
flush();
sleep( $user['stamina']*100 );
echo 'Done!';
Alternatively, you could still use flush; but instead of using sleep, use a dummy while loop and in that while loop compare the current timestamp to an older timestamp, and if the difference is past the span of time defined by 'stamina', then break the loop. This is really just a fools sleep method.
<?php
echo 'Something about something for someone ... ';
flush(); // Still need to forcefully send the output to the browser
$start = microtime();
while(true)
{
$now = microtime();
if($now - $start == ($user['stamina']*100))
{
break;
}
}
echo 'Done!';
Those are really the two simplest ways; however, the first is the more proper way.
Also don't forget to set the execution timeout limit to 0 so that the page doesn't time out after you start to sleep.
The second version is really more for if you wanted to output information (like a counter that counted down) so the user could see exactly how long they had left to wait.
Hope that helps.