phpAdsNew

phpAdsNew is a banner management and tracking system written in PHP.

[faq] [configuration] [api]       [homepage] [report bugs] [forum]


Frequently Asked Questions

Does phpAdsNew has support cache busters?

In some circumstances you may want to add a banner network to phpAdsNew. Some banner networks rely on cache busters in order to work correctly. A cache buster is a random string of digits which must be unique in every call to the banner network. In the next example the # must be replaced with unique number everytime the banner is shown.
http://servedby.advertising.com/site=12345/size=468060/bnum=########/bins=1/rich=0

If you add this banner network to phpAdsNew you must use 'Banner refered through URL' and replace the random number with the following string {random:x} and replace x with the number of digits you want to have. For example:
http://servedby.advertising.com/site=12345/size=468060/bnum={random:8}/bins=1/rich=0

If you need to add the same random number to both the image and the target url you can simply specify the same {random:x} code in both the image and target url. phpAdsNew will make sure the string {random:x} is replaced with the same number in both cases.

What's the difference between compact statistics and verbose statistics?

Verbose statistics were the only kind of statistics phpAdsNew supported for a long time, but since version 1.9 phpAdsNew now supports compact statistics and the compact stats are even used by default. Compact statistics are faster than verbose stats and take a lot less storage space on the MySQL server. There is a drawback however, the compact stats are less accurate than the old verbose stats, there are no hourly overviews for example.

How can I speed up phpAdsNew?

You can speed up phpAdsNew considerably by reducing the functionality. You could disable multiple keywords and conditional keywords. You could enable 'delayed inserts' as well, which should increase the speed of statistics logging. Other things that influence the speed of phpAdsNew are reverse lookup, sequential banner retrieval and banners stored in MySQL. If you really need to serve massive amounts of banners you could try using multiple servers. It is possible to store banners on an external ftp/webserver, use a different server for the MySQL database and serve the ads from a different server as your webserver. It is even possible to use multiple servers which all have phpAdsNew and MySQL installed and use same database which is replicated over all the servers.

My MySQL server uses too many resources, what can I do?

You can reduce the load on the MySQL server by storing banners on the webserver instead of the MySQL server. It is also possible use 'delayed inserts' which can be turned on in the configuration file. If phpAdsNew uses persistent connections to the MySQL server you could try turning this off in the configuration file. Persistent connections do speed up phpAdsNew, but increase the load on the MySQL server.

Can you help me to install phpAdsNew? Can you please implement this feature I need?

Maybe. Let us know what you want...

Troubleshooting

phpAdsNew doesn't display any banners on pages which are the result of a form being submitted in IE

This is a known bug in IE 4 and higher. phpAdsNew 1.9 does have a workaround for this bug, but it only works in remote invocation with JavaScript and local mode. Normal remote invocation is still affected by this bug. Microsoft is aware of this bug for some time and IE 6 apparently works fine. If you use normal remote invocation there is nothing we can do about it.

phpAdsNew doesn't display any HTML banners

HTML banners are only supported if you use remote invocation with JavaScript of local mode. It is not possible to display HTML banner with normal remote invocation.

The login doesn't work, it keeps prompting for username/password all over again or I can't add banners

Make sure you have enabled magic_quotes_gpc in your PHP configuration.
Make sure $phpAds_url_prefix in config.inc.php is exactly the same as it is on the server (http://www.test.com/phpads is not the same as http://www.test.com/phpAds). Also make sure it doesn't end with a slash (/).

I get the following error: Fatal error: Call to unsupported or undefined function mysql_(p)connect()

Your PHP is not configured for MySQL support. If you're on Unix, you need to recompile PHP --with-mysql. If you're on Windows, you have to enable the MySQL DLL in your PHP configuration. See the manual, installation section, for more details.