The best you can do in this situation is to generate a .rdp connection file on-the-fly. Why? You simply can not execute files on someone else's computer via a web application. Okay, sure, there are ways such as using PsExec from the PsTools pack to remote execute a program (assuming you have administrative privileges on the target computer), so feel free to explore that route if you want.
In this situation, however, I think generating an .rdp connection file on-the-fly would work just as well. If you open up the RDP software (Start -> Run -> mstsc) and type in a server address (any for testing purposes), you can save that connection instead of simply connecting to it. To do this, click the Options button and then click the Save button under "Connection settings."
Once you save the .rdp file, you can open it in a text editor (ex. Notepad) to see how the file is structured (which is a lot like how PHP serializes variables :p). Using this file as a template, you can make a PHP script that, when a link is clicked, will output a header that instructs the browser to view the page as an "attachment" (opening a dialog box, usually asking the user to save or open the file). This script can fill in the address of the server using whatever means you had in mind (ex. the link is to "connect.php?s=server_name_here" so the PHP script grabs the address from the URL).
Also note that you can remove every line from the .rdp file except the "full address" line and it will still work. What this does is simply specify the address to connect to; the user's computer will then use the preset defaults for all other options. If you wanted to specifically configure the remote session, though, you can of course leave these other lines in there and configure them the way you want.