I am getting a blank page (or blank part of a page)
- Posted by admin
- 30 April 2009
- Zen Cart Tutorials
Answer:
Blank pages can be caused by a number of things, and often occur just after installing, upgrading, or customizing your store. Any time you touch a PHP file, you must be sure to not introduce syntax problems, and you need to be sure that it uploaded correctly.
1. Did all your file-uploads work properly?
Sometimes FTP programs experience a timeout when uploading large quantities of files (such as when installing or upgrading your site), or fail to fully upload some files, or leave them as just 0-bytes in size. Some programs like SmartFTP and CuteFTP are well-known to be problematic in this area. For Windows PCs, we recommend FileZilla as a free, fast, and reliable FTP program. On Mac, Transmit or CyberDuck are commonly acclaimed FTP tools.
Best to re-upload and ensure that there are no errors, and that no files are left with 0 bytes.
Failed uploads are the MOST COMMON CAUSE of all website problems.
2. Have you created any syntax errors in your customizations?
A PHP syntax error will very often result in a blank screen.
When this happens, there is often also an entry in the server's errorlog, which you can often view via your hosting control panel area.
a) Turn on debug logging to store errors to a log file
Install the Debug Error-Logging Utility
One way to identify what PHP errors are happening, especially if you have no access to server errorlogs, is to use the Debug Error-Logging Tool from our downloads area. It's a simple install, and can expose the source of your problems fairly quickly. Click {here} to download it.
If you're dealing with blank admin pages, for the upload destination, substitute the /admin/includes/extra_configures folder instead of /includes/extra_configures where mentioned in the instructions.
Then see the "Dealing with Error Messages" section, below ...
b) Attempt to show errors on-screen.
While the method above is far more reliable and preferable (since messages are never shown to customers), Another way to help identify *where* an error is happening is to show the errors on your browser. The drawback to this is that your customers can also see the errors, and search engines might catch them too ... which could be embarrassing.
To attempt to show PHP debug errors on-screen, create and upload a new file, like this:
Filename: /includes/local/configure.php
<?php
define('STRICT_ERROR_REPORTING', true);
?>Then try to access your site again. You may see many warning messages on the screen.
Dealing with the Error Messages
The "fatal" messages are the more important ones to deal with. "Notice" messages can be ignored in most cases. "Warnings" should draw some attention, but are not fatal.
Also note that many error/warning messages will be a result of previous error/warning messages.
Deal with them in the order they appear, and don't blame the later errors until the earlier ones are dealt with first.
3. Common customization errors
The most common customization errors include:
- using ' or " marks inside define() statements, resulting in mismatched quotes
- removing or adding punctuation to define() statements, thus breaking the correct syntax. A define() statement should look like this: define('CONSTANT_NAME', 'value here');
- missing semi-colons and periods, unbalanced parentheses, braces, brackets
- uploading files to the wrong places. For more information about overrides, see the Overrides Chart and the Overrides FAQs

