Solved

page load time

Posted on 2011-03-15
8
335 Views
Last Modified: 2012-05-11
Hi,

I have an image gallery and I want to display the time it took all of the photos to load after they are done loading.
0
Comment
Question by:Computer Guy
8 Comments
 
LVL 38

Expert Comment

by:Aaron Tomosky
ID: 35138082
Firefox + Yslow + firebug
0
 
LVL 3

Author Comment

by:Computer Guy
ID: 35138092
On the page to the user not browser
0
 
LVL 34

Expert Comment

by:Beverley Portlock
ID: 35138665
Look at http://www.php.net/microtime

There are examples in the code of how to use that to time a script, but put one line at the start after the <?php tag and another near the end and simply subtract, then echo the result onto the screen.

0
 
LVL 3

Expert Comment

by:sbickerstaff
ID: 35138671
You could probably start a javascript counter and output it to a field, but I'm not sure how you would stop this when the last image is loaded i.e. if the functionality is there in the browser to trigger an event when all images have been downloaded.
0
Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

 
LVL 34

Expert Comment

by:Beverley Portlock
ID: 35138683
From the page linked to above...

<?php
$time_start = microtime(true);

// Sleep for a while
usleep(100);

$time_end = microtime(true);
$time = $time_end - $time_start;

echo "Did nothing in $time seconds\n";
?>

Open in new window

0
 
LVL 34

Accepted Solution

by:
Beverley Portlock earned 500 total points
ID: 35138717
Ahh.. just noticed, it's the photos you're timing, not the script. In that case it'll be javascript, not PHP. Sorry......
0
 
LVL 3

Author Comment

by:Computer Guy
ID: 35140431
Do you have a Javascript solution?
0
 
LVL 34

Expert Comment

by:Beverley Portlock
ID: 35146602
"Do you have a Javascript solution?"

No. I'm reasnably good at javascript but PHP is my main area of expertise. Having said that it seems to me that the real problem is the customer's machine and the ADSL (or whatever) line used to view the website. The PHP script will simply add <img../> tags in a fraction of a second and it is the process of downloading them to the client machine that takes all the time, so where you say "On the page to the user not browser" you need to measure the whole page download.

Now there are three ways of doing things in Javascript at preset times

1. Put javascript in the <head> section. This will run BEFORE the page shows up to the user

2. Put javascript at the end of the <body> section. This runs as soon as the HTML is downloaded, but pictures etc may still be downloading

3. Put javascript in a function and trigger using the  onLoad event. This should not trigger until everything has loaded.


So, we can try something like this (UNTESTED)

<head>
   <script>
      var startTime = new Date().getMilliseconds();
      var actualTime = 0;
      var endTime = 0;

      function timeLoad() {
            endTime = new Date.getMillseconds();
            actualTime = (endTime - startTime ) / 1000;
            alert( "It took " + actualTime + " seconds" );
      }
   </script>
</head>
<body onLoad='timeLoad()' >
   ...
   ...
   etc


As I said, javascript is not my strongest area so I may be a bit off with this
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

Popularity Can Be Measured Sometimes we deal with questions of popularity, and we need a way to collect opinions from our clients.  This article shows a simple teaching example of how we might elect a favorite color by letting our clients vote for …
Generating table dynamically is the most common issue faced by php developers.... So it seems there is a need of an article that explains the basic concept of generating tables dynamically. It just requires a basic knowledge of html and little maths…
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
The viewer will learn how to dynamically set the form action using jQuery.

746 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now