I don't think odbc_prepare and odbc_execute support output parameters for stored procedures on MSSQL. An example of output parameters for MSSQL is at http://support.microsoft.com/support/kb/articles/q174/2/23.asp
Also, my MSSQL driver seems happy only when I use the following incantation:
...code removed...
$stmt=odbc_prepare($conn_id, "exec my_proc_name ?,?,?");
$parms=array("fred","password",5);
if (!odbc_execute($stmt, &$parms)) die("odbc_execute failed");