Say for eg you are trying to auto populate the record when you are creating a new account
Every field has a ID and you can find that by inspecting the field in chrome
Paste the formula in the button script
{!URLFOR($Action.Account.New,'',[acc2="test",acc5="123"])}
$Action.Account.New - This represents the target URL
'' - this represents the ID and since we are passing most of the params throught the 3rd options lets ignore this [] - this is where you put in multiple params.
Just in case you wnatwant to update an account use:
{!URLFOR($Action.Account.Edit,Account.Id,[acc2="test",acc5="123"])}
If you want to autosave the records save="1" / save ="x"are all not supported by SF/ not working as of today. The only alternative is using ajax refer the doc below:
http://help.salesforce.com/apex/HTViewSolution?id=000176169&language=en_US
Paste the below script in the button script area and choose option for behavior as " Execute Javascript"
{!REQUIRESCRIPT("/soap/ajax/22.0/connection.js")}
var newRecords = [];
var a = new sforce.SObject("account");
var accountid ;
a.name = 'Test_Pass';
accountid = a.id;
newRecords.push(a);
result = sforce.connection.create(newRecords);
if (result[0].getBoolean("success")) {
alert('new account created with id ' + result[0].id);
} else {
alert('failed to create account '+ result[0]);
}window.location.reload();