¿Se considera una mala práctica dar nombres de formularios HTML con el mismo nombre que los nombres de campos de tablas? Estoy construyendo algunas consultas de inserción de sql dinámicas, y actualmente estoy usando algunas expresiones regulares para cambiar los nombres a los campos de base de datos relevantes sobre la base de que siento que puede ser inseguro; de lo contrario, ¿cuáles son sus opiniones?¿El mismo nombre para campos de formulario y campos de tabla de base de datos?
Respuesta
Escribí una función para hacer INSERT
consultas para mí, y depende de ese hecho. Toma los nombres de las variables $_POST
y INSERT
s en sus columnas correspondientes.
Como se ha dicho en el comentario en el OP, no importa, y en la mayoría de los casos, le ahorra tiempo de volver a recordar si ha utilizado first_name,
firstname,
o first.
Además, tenga en cuenta que sus usuarios nunca verá los nombres de las columnas de la base de datos, y solo verán los nombres de los formularios si visualizan el origen. Por lo tanto, ¡no hay mucho de qué preocuparse!
¡Buena suerte!
Creo que esto puede ayudarlo a reducir la codificación que necesita hacer. Aunque parezca una vulnerabilidad, lo más importante es verificar los valores provenientes de los usuarios en busca de datos maliciosos. No creo que pueda ser dañino, ya que saber qué campos de base de datos está utilizando no le da mucho a los piratas informáticos. Todavía necesitan hackear el servidor de base de datos para acceder a sus datos.
Para más detalles sobre esto, todo el mundo sabe que una mesa tendrá un campo 'id', y uno a los usuarios almacenar tendrá un' contraseña, '' sal, y '' columna name'. Así que no se preocupe – David
Los nombres deben ser lo suficientemente legible para que lo lea, y sin embargo "impredecible" (con la falta de un término mejor) lo suficiente como para que un atacante no ser capaz de adivinar las partes privadas.
Los nombres de los formularios en realidad no importan, pero un buen nombre para un campo de contraseña sería the_users_password
o passphrase_for_account
.
¿Por qué 'the_users_password' sería más seguro que' password'? – David
@David: Porque a un atacante le costará más adivinarlo. Es poca seguridad, como si llegado hasta aquí, será capaz de obtener el esquema de la tabla, pero aún así ... –
Bueno espero que él no es el almacenamiento de contraseñas en texto plano en la columna de la contraseña! Aunque entiendo lo que dices. – David
- 1. Asesoramiento sobre esquemas de base de datos para almacenar campos de formulario y valores de campo
- 2. Estructura de base de datos óptima para campos adicionales entidad
- 3. Uso de C# para iterar los campos del formulario con el mismo nombre
- 4. webrat autofilling campos de formulario
- 5. jQuery - Inhabilitar campos de formulario
- 6. SQL distinto para 2 campos en una base de datos
- 7. ¿Cómo crear un form_for de Rails con campos de formulario dinámicos de una tabla de base de datos?
- 8. insertar en la base de datos de los campos de formulario de Joomla
- 9. Tamaño predeterminado para los campos de la base de datos
- 10. ¿Cómo usar campos de formulario personalizados para campos de modelo en el administrador de Django?
- 11. MySQL: Recorte todos los campos en la base de datos
- 12. jQuery Diálogo publicación de campos de formulario
- 13. Número variable de procesamiento de campos de formulario
- 14. Eliminar/deshacer campos de formulario en Symfony2
- 15. Componente de formulario de Symfony2: crear campos sin el nombre de formulario en el atributo de nombre
- 16. jQuery Validar múltiples campos con el mismo nombre
- 17. Django: ¿Reutilizar campos de formulario sin heredar?
- 18. Base de datos - (filas o registros, columnas o campos)?
- 19. Django agrupación de campos de formulario
- 20. Usando jQuery para añadir dinámicamente campos de formulario (o conjuntos de campos) en base a un valor cuadro desplegable
- 21. Buscar base de datos MySQL con múltiples campos en un formulario
- 22. Campos de formulario desactivados que no envían datos
- 23. Campos booleanos de indexación
- 24. iCalendar Lista de "campos" (para el esquema de base de datos basado en el estándar iCalendar)
- 25. jqGrid: Inhabilitar campos de formulario al editar
- 26. MVC Validación de formulario en varios campos
- 27. Enviar datos de campos adicionales con Uploadify
- 28. Creación de un tampón con el mismo nombre que la tabla de base de datos
- 29. Rails valores predeterminados de la base de datos y validación de modelo para los campos booleanos
- 30. ¿Cómo usar javascript regex para buscar campos de formulario "vacíos"?
Es difícil moverse por tener "nombre" en una tabla y un formulario. Los nombres son irrelevantes, siempre y cuando no estés haciendo una ronda de esos nombres de campo a través del formulario, abriéndote a todo tipo de ataques de inyección sql. –