From what I understand, you shouldn't connect through Unity3D because people could then get hold of your DB credentials.
Here's some information on how to do it more safely:
Unordered lists have a top and bottom margin of 1em by default.
Elements within the flow of a same formatting context have collapsing margins.
To prevent this, you could give your header (the big blue one) a bottom border of 1px in the same color as your page background and remove the 1px...
Just because you can call a method on an integer (for example), doesn't mean it's an object.
All it means is that ECMAScript is smart enough...
What I said about operator precedence remains true though:
Because the '=' operator precedes 'or', you could still get nasty "bugs".
A sidenote that may be interesting in this thread: Assignments in PHP "return" the truthy or...
As for private properties or methods: they are supported in ECMAScript 5 but, for now, all you can do is simulate them.
The reason I say simulate, is because the private/protected/public bits get complicated as...
|| has higher precedence than 'or' and is easily interchangeable with binary operators such as 'binary or' (|).
Edit: using a literal 'or' will actually result in failures, seeing as '=' has higher precedence than 'or', but not '||'.
That would, as GTU said, cause notices if the array key doesn't exist.
You could, however, suppress those notices and use the code below.
$ip = @$_SERVER['HTTP_CLIENT_IP'] || @$_SERVER['HTTP_X_FORWARDED_FOR'] || @$_SERVER['REMOTE_ADDR'];
For more info, see...