[quote author=m3dia_lab link=topic=134808.msg2903196#msg2903196 date=1233443571]
you you have the little metal "tab" they gave you with the car upon purchase? thats the best way
[/quote]
Doesn't matter, that code on the tab just has the code for the physical key itself. They can do the same thing with the VIN. The imobilizer still isn't going to allow the newly cut key to start the car. The car needs to be programmed to accept the key, so the dealer isn't going to be able to do anything without the car sitting in front of them. Self programming isn't going to help you either, since you don't have two keys the car accepts as valid.
About the only thing you can do is get the car towed to a dealer, have a new key cut, and have the dealer program the ECU to accept the new key. Having the car towed is probably going to be cheaper than a new ECU. The way to avoid this in the future (and this should be a lesson to all mazda3 owners) is to always have THREE programmed keys available at any time. That way as soon as you lose one you can order a new one online (they used to be something like $18 pre-cut according to your VIN at onlinemazdaparts.com) and self-program it using the two remaining keys.