Someone comes onto my site enters any full number, a paypal button appears with the amount they have entered?
Wouldn't know how to do that. But when you go to the paypal site, there are plenty of buttons and scripts that can be generated so that when people click the paypal button, they can enter whatever number they desire.
You don't. You get a 'donate' button from Paypal, then they go to Paypal's website and enter the number there. Paypal changed the ability to edit dollar amounts off of Paypal's site to the best of my knowledge (reason being is people could download the source code, edit the source to change the dollar amount to $0.01 and the automated scripts on websites would get you premium accounts, or let you have the full product and a serial key, etc. because it was said to have received a charge of a certain amount, when all they really received is $0.01).