Last updated: April 2, 2008

A way to save bookmarks to your account without going to the website itself.

What you will need

Important! The newest version of the PhpDelicious library has dropped support for PHP 4, so if you have trouble using proxy with PhpDelicious, try downloading proxy with the older version of PhpDelicious below. However, it is highly recommended that everyone upgrades to using PHP 5 very soon; I will be updating the proxy code accordingly… when I find a few minutes to do it!

Download: proxy v1.1 – April 2, 2008

Change log


  1. Extract the files:
  2. Open up the proxy settings (“delicious/settings.php”) and prepare your proxy:
  3. Upload the directory to the desired location on your host (e.g. “”).

Additional installation notes

Using the proxy

  1. Open up the location of your proxy in your browser. You will need to add “?key=yourkey” to the URL to be able to access the proxy the first time, something like “”
  2. You’ll want a bookmarklet to make using your new proxy as easy as possible. Once you’re on your proxy page, you should see the proxy form. Pop down to the bottom of the page and hit the “ proxy bookmarklet” link. This will generate a bookmarklet for you. Drag the bookmarklet to your browser’s bookmarks and try it out.

If you get any problems, give me a shout.

Change log

Soon: upgrading to PHP 5.

  1. proxy v1.1 – April 2, 2008 (download)

    Affects: form.thtml, index.php, s.css

  2. proxy v1.0.1 – December 6, 2007

    Affects: index.php

  3. proxy v1.0 – October 31, 2007


At time of writing, the PhpDelicious library needed a tweak before it would work properly. If you download my tweaked version of the library, you should be fine. However, if you decide to download the latest copy of the PhpDelicious code for use with the proxy, you may need to do these tweaks yourself.

It seems that the response data returned by the API has changed since the last version of the PhpDelicious code was released, or at least the response differs depending on situation. To get it to work reliably, I needed to change line 366 of the “” file:

// old code
//return $this->GetBoolReturn($aResult['content']);

// new code
if (isset($aResult['attributes']['CODE'])) {
	return $this->GetBoolReturn($aResult['attributes']['CODE']);
} else if (isset($aResult['content'])) {
	return $this->GetBoolReturn($aResult['content']);
} else {
	// presume it failed?
	return false;

Back to the Experiments index.

Back to the Lab index.