If you try to charge your iPhone 3G by plugging it in a non-PC usb or not-specific-iPhone accessory, it wil not do it. this is due because a standard usb have 4 pins, Power, ground, Data- and Data+. Usually you need Power and ground to recharge anything, but the iPhone need also a signal on Data- and Data+. By googling I found this:
To charge an iPhone 3G / iPod Touch 2nd gen, usb data- (25) should be at 2.8v, usb data+(27) should be at 2.0v. This can be done with a few simple resistors: 33k to +5v (23) and 22k to gnd(16) to obtain 2v and 33k to +5v and 47k to gnd to obtain 2.8v.
Here what I did by using a male/female standard USB cable.
With more patience you can do something the looks better for sure.
Ahh… it works!