Amos a ver... te aclaro un poco.
Aqui hay dos cosas, lo que necesitas para DESARROLLAR la pagina, testearla, probarla y demas y lo que necesites para ALOJARLA ya terminada.
Es conveniente probarla "off line", es decir en tu propio ordenador, para eso necesitas "de entrada" lo que se conoce comunmente como AMP (Apache + MySql+Php). Esto es para crear y probar la pagina. No es obligatorio usar esto, se pueden usar mil y una tecnologias diferentes pero te he puesto esto por dos razones:
A: Son las mas sencillas de encontrar en el 99% de los servidores
B: Son Gratis
Puedes usarlos bajo Windows o bajo Linux, es indiferente. Las versiones de los programas son faciles de encontrar, aunque si no tienes algo de practica te recomiendo leer con cuidado los manuales de instalación o buscar algun paquete que te instale y configure las tres cosas (que los hay)
Sobre "con que hago la pagina". Pues en el apartado de programas, en realidad con el bloc de notas te valdria, pero hay varios editores HTML por ahi gratuitos que funcionan mas que bien, ahi es el gusto de cada uno.
Las paginas se prueban en el servidor local, y POR FAVOR no cometas el típico error de intentar cargarlas directamente en el navegador, hay que meter la dirección "Localhost" (mira de nuevo los manuales)
Las paginas es preferible hacerlas en HTML, el php junto con las extensiones MySql se "empotran" dentro del codigo HTML. Es algo lioso al principio, pero en realidad no lo es tanto. Recomiendo también conocer un poco las CCS (Cascade Style Sheets) para unificar de forma simple y sencilla el estilo de las paginas. Algo de Javascript para comprobar formularios nunca esta de mas.
Para lo que son "carritos de compra", hay opciones "de pago" ya hechas a tu disposición en muchos servidores. Si nunca has programado aplicaciones en php es mas que recomendable "tirar por ahi", ya que el desarrollo, comprobación y testeo exaustivo de una aplicación de ese tipo es infernal. Idem si necesitas sistemas de pago seguro y demas, hay servicios ya hechos que una empresa puede permitirse perfectamente pagar. Alguno te dira que es "mas barato" hacerlo uno mismo. Falso, el tiempo cuesta también dinero, y no poco.
¿Modificar datos en la base de datos?. Nada mas sencillo, una pagina HTML con los formularios de los datos a modificar y unas pocas instrucciones php con extensiones mysql y ... listos. Es recomendable eso si el uso de sesiones y contraseñas para controlar que no pueda entrar cualquiera. Mejor si el servidor da opción a tener "directorios con password" aunque no veo que sea MUCHO mas seguro que un buen sistema con php y sesiones.
¿A prueba de Hackers?... pues mete la pagina en un disquete y entierralo en un pozo de hormigon. No hay NADA seguro al 100%, en todo caso nunca esta de mas tomar precauciones. Puede que a un "hacker" de verdad le cueste mucha faena meterse, pero seguro que el 99% que son meros "lamers" no podra.
Diseña la pagina pensando que los usuarios son idiotas, memos o debiles mentales. No des nada "por supuesto". La gente es capaz de las barbaridades mas grandes cuando les das un cuadro donde meter texto. Algo tan simple como un formulario para pedir media docena de datos (nombre, dirección, correo electronico...) puede tener bastante mas follón de lo que parece si simplemente compuebas que los datos son "correctos" o al menos consistentes.
En general que diria que mucha paciencia, leer mucho y en el caso de que hablemos de una empresa "media", tirar dentro de lo posible a soluciones "ya hechas" para lo mas complejo o delicado. Sabes que funciona, sabes que esta probado y el tiempo que se ahorra no tiene precio por lo general.
Se me olvidaba... es mas que interesante conseguirse el "phpmyadmin" que esta en
http://www.phpmyadmin.net/ una fabulosa herramienta para crear, gestionar y mantener las bases de datos en MySql. También suelen incluirla en la mayoria de los "paquetes" de servicios de los proveedores de internet.