Monthly Archives: November 2005

PHP Certification

Took the PHP Certification Exam today and passed it.  The exam ended up being a lot more difficult than I thought it would be.  I’m now a Zend Certified Engineer.

Zend Certified Engineer 

Not sure what kind of certification I am planning to go after next.  At this point in time I think I am leaning more to a MySQL Core Certification and MySQL Professional Certification.  The other certifications that I’m interested in getting in the future would be java certifications. 

PHP Session / Cookie in Frames Using Internet Explorer

For the last couple hours, I’ve been frustrated trying to figure out why I’m having an issue creating a session cookie with PHP while browsing with Internet Explorer.  This was testing some software for work that I wrote, or I wouldn’t have been using Internet Explorer emoticon.

Here is the problem that I ran into.  There is a master page that is being ran on a seperate server than the one that will be displaying this content.  The master page displays my servers content in one of the child frames.  When using internet explorer with the default privacy setting, Medium, I am not able to create a session due to the fact that a cookie will not be accepted by Internet Explorer.

I have found a solution to this problem.  The situation is that when the frame has been created by one server, and the child frame then loads content from a second server, Internet Explorer treats all cookies from the second server (in the child frame) as 3rd party cookies.  Under the Medium privacy level, cookies are not allowed from the secondary server because Internet Explorer "Blocks third-party cookies that do not have a compact privacy policy".  To fix this problem, a compact privacy policy must be added to the headers sent to the client before a cookie is attempted to be created.  The quick way is to just send this string in a header to the client ‘P3P: CP="CAO PSA OUR"’.  To get a better understanding of a compact privacy policy, you can go to http://www.w3.org/P3P/.  There is a bunch of commercial software out there to help you create fully detailed compact privacy policies, or you can use the free one that I found at http://www.the-dma.org/privacy/creating.shtml.

One thing to note is that this issue does not only occur with PHP.  Just happens that’s what I was developing with when I found the issue.  It will occur with any development language that tries to create cookies in the situation where a compact privacy policy does not exist, internet explorer is set on medium privacy level, and a frame page served by one server loads a child frame from another server. 

House Fell Through

Well, we are back house hunting again.  We found out today that they still have not gotten the title to the house straightened out.  They figured out who needs to sign, but no signatures have been filled out yet.  Since we will need to be moving in by January 1st, we decided not to extend the contract at this time.  We told them if they get everything figured out, still want to sell, to give us a call.