You can use TCP/IP over SSH from within MySQL Workbench and SQLyog without the need for PHP tunnelling script if you have SSH access to you server.
I have had customer sites on shared hosts where this doesn't work due to server configuration which is out of my control. I have overcome this restriction via SSH tunnelling which has the added benefit of being encrypted (Obviously this will only work if you have SSH access to the host however), although noted, the original post asked for a HTTP tunnel.
To setup SSH Tunnelling in SQLyog, on the MySQL tab for your connection, enter you MySQL credentials as you normally would for a local user on the host (replace 'root' and password with something secure and sensible):

And then under the SSH tab, enter your terminal login details (username, password and port# if not 22):

Then save your connection.
The process is similar in MySQL workbench so shouldn't be hard to figure it out.