The problem is in the codes that begin with 0, if you test with 28001 that corresponds to Madrid, Spain; when saving correct.But if you put 08001 that corresponds to Barcelona, Spain; the first 0 eats it and when saving leaves 8001 it corresponds to another place.