Scriptplayground Network

Since I have gotten something like 30 spam requests and emails about things I have twittered (from random people), I have decided to follow the others and lock my timeline. It was also because my “tweets” appear in various searches/feeds.

In other twitter news, they upped the API call limit and just in time for things like “Twitterific (iTunes link)“, now available at the Apple App Store.. so now I can update you all on my random comments/thoughts while on the road.

If for some reason you have to hear what I’m talking about, please feel free to send a request.

Update: I also privatized my social network profiles for the same reason.



I have been working on a large Flex project for a while now which has been a ton of fun. The core of the application is built in Flex with a class to manage remote calling to PHP files. This is basically how the data comes and goes through the application.

While testing and developing it locally I continuously ran small tests to ensure all the data was working properly and everything was. I decide to upload a build to my online environment for the client to check out and all of a sudden the Remoting classes were returning the same error:

Client.Error.DeliveryInDoubt
Message: Channel disconnected
Detail: Channel disconnected before an acknowledgement was received

This is usually caused by a syntax error in the PHP, but it worked locally.

Charles to the rescue (again)
I opened up Charles and started looking at the response from PHP, to which I found the following:

Fatal error: Uncaught exception 'VerboseException' with message 'file_exists(): open_basedir restriction in effect. File(/models/Debug.php) is not within the allowed path(s): (/tmp)' in /PATH_REMOVED/amfphp/core/amf/io/AMFBaseDeserializer.php:380

That is saying the file can’t be loaded from the root of the server.. well obviously, but the question is, why is AMFPHP looking for it there at all?

After talking to some friends and looking around the AMFPHP files I came across a function within the “globals.php” file.

setClassMappingsPath();

This allows you to set the path, which I did, but for some reason it was still failing. After some more time spent troubleshooting I found the function definition which can be found in “amfphp/core/amf/app/Gateway.php”.

function setClassMappingsPath($value) {
$path = realpath($value . '/') . '/';
$GLOBALS['amfphp']['customMappingsPath'] = $path;
};

The realpath() function seems to be the culprit. I am not saying this is an AMFPHP error, it could be a configuration error on this web server, which I will investigate further once the project is complete.

All I did to fix the error was comment out the realpath() check and set $path = $value. That stopped the incorrect loading of the class files and “magically” my Flex application started working properly once again.

When Errors are Good
The errors in this case were not all that helpful at first, but after looking into the code they really did paint a picture. The “Delivery in doubt” error that Flex throws will prove to be your best friend if you wind up with syntax or file errors within PHP.

I have yet to hear back from the guys at Spoono Host (spoonohost.com) or Spoono (spoono.com) in general, but now I am calling on the community to shed some light on potential legal action!

Another friend of mine, Ryan, just told me his sites domain has expired and he is in the process of a marketing campaign. This isn’t script kiddies here, this is hurting people that are fathers and adults and most importantly, business people.

I may sound a bit agitated, well thats good because I really am.. this is complete and utter bullshit in the highest form. I really hope the hosting company smartens up because this is just wrong.

Note: Hosting and company URLs intentionally unlinked

Update: I recommend MediaTemple or RackSpace as a great alternative.

After looking at digital Hollywood’s web site I quickly realized they need a designer, and quick. For an organization that is about digital content, they cleary missed the meeting on usability and overall presentation.

Its not even mediocre, it just downright sucks.. sorry to say, but its true. See for yourself.

The concept behind the events are interesting, but if this is the presentation layer, it really scares me as to what the training/sessions will contain.

This is a paramount example of putting your best in anything you do, web site for event included.

Apple unveiled iPhone 2 at WWDC earlier today. Despite many mockups, it does not have video conferencing or all the other wacky features people guessed about.

However, it does sport 3G (of course), GPS and a lower price tag, with the 8GB model for $199. The phone will be available on July 11th.

Will I buy one on July 11th? Not sure, will you?

« Prev - Next »