Access denied in mysqldump after ip address change

July 17th, 2014

This one was a real hard nut to crack. My workstation ip address has changed and I could no longer connect to my MySQL server remotely. So far nothing new or interesting. I went to cPanel and added my new ip address to “Remote MySQL” – a list of ip addresses that are allowed to access the database server remotely. Being a cautious person, I also removed my old ip address while I was there.

So now I could connect remotely both from my IDE (via JDBC) and from my local mysql client but to my surprise, I was still getting access denied from mysqldump. Mhm…
Read the rest of this entry »

Tired of template undefined field warnings in PhpStorm?

May 13th, 2014

Code inspection is an awesome feature of PhpStorm. Remember the #gotofail SSL Security Bug? Wouldn’t happen to you with PhpStorm because it warns about unreachable statements. And a lot more.

If however, you get too many warnings, you stop paying attention to them. Especially if you know they’re bogus. One of them is the undefined field warning for template variable assignments in Nette presenter.

Seen this a million times?

Referenced field is not found in subject class.
Note: Check is not performed on objects of type “stdClass” or derived.

Read the rest of this entry »

Human join / implode helper

December 11th, 2013

Did you notice that when humans list items, they use a different glue for the last item?
“Who was there?” “Tom, Bob and Jane.”

Here’s a Nette helper that does the same.

  2. public function humanJoin($pieces, $glue = ‘, ‘, $lastGlue = ‘ and ‘)
  3. {
  4.   if (empty($pieces)) {
  5.     return null;
  6.   }
  8.   if (count($pieces) == 1) {
  9.     return array_shift($pieces);
  10.   }
  12.   $lastItem = array_pop($pieces);
  13.   return join($glue, $pieces) . $lastGlue . $lastItem;
  14. }

Use as {$friends|humanJoin} or {$aliens|humanJoin:’, ‘:’ nor ‘}.

Configuring Nette in Neon

February 18th, 2013

I bet you didn’t know it but Nette’s internal behaviour can be configured quite extensively in config.neon. Default form error messages, switching on/off debugger panels, changing mailer to use SMTP instead of mail() and so on. All of this can be set up in PHP but keeping configuration out of your code helps making it easier to read. Do have a look, it has a great potential. As usually, the documentation is pretty bare and it’s up to us to discover the whole truth. This post contains some additional information that I scavenged in forums or discovered myself. Read the rest of this entry »

You thought using Skype was secure?

August 13th, 2012

Many of us send sensitive information over Skype chat in order to prevent a third party from reading it. Think login credentials for example. What you may not know is that Skype is set by default to store chat history on your hard disk. Nothing wrong with it if it weren’t in plain text!

Read the rest of this entry »