What is the best way to submit sensitive data (social security, driver's license, etc.) over the internet. I also need to store it in a database where an administrator could access the info.

I may be looking at either open-source solutions or outsourcing this to a company to limit my liability.

what you need is a secure server (https://).
it encrypts all data with a 128bit encryption key.
you can go higher in encryption but it costs more.
you will also need a security certificate.
this can be made by a company and needs to be signed by a CA (certificate authority) such as Verisign ($$$) NOT CHEAP. you can buy secure servers at places like godaddy. they have their own security certificates that they will sign for you ($$$).
i have my own secure server on my home computer.
i created all of my certificates with command prompt and signed them with my own CA i created.
this was fairly easy but i don't recommend it.

i can host a script that will process this information for
you and i have my own mysql server where all your data can be stored. just let me know.

Be sure that the pages processing the information check to make sure they are in a https:// and not standard http:/. Just have this code at the beginning of any page requiring the secure connection.

header('Location: $page')

I think. :P