Foros del Web » Programando para Internet » PHP »

formulario de respuesta

Estas en el tema de formulario de respuesta en el foro de PHP en Foros del Web. Hola: Soy un simple aficionado, así que pido disculpas por adelantado Tengo un formulario que incluye la dirección de correo electrónico para enviar consultas que ...
  #1 (permalink)  
Antiguo 26/11/2005, 19:43
 
Fecha de Ingreso: marzo-2003
Mensajes: 225
Antigüedad: 21 años, 1 mes
Puntos: 0
formulario de respuesta

Hola:
Soy un simple aficionado, así que pido disculpas por adelantado
Tengo un formulario que incluye la dirección de correo electrónico para enviar consultas que se almacenan en un archivo txt y pueden verse en una página. Ahora pretendo incluir un formulario de respuesta a las consultas de forma que cada respuesta quede asociada a su consulta, en un formato como este:

título de la consulta
consulta
nombre, dirección de correo,fecha >responder<

título de la consulta
consulta
nombre, dirección de correo,fecha >responder<

título de la consulta
consulta
nombre, dirección de correo,fecha
respuesta
nombre, dirección de correo,fecha

título de la consulta
consulta
nombre, dirección de correo,fecha >responder<

...
etc

¿me podéis ayudar?
gracias y saludos
  #2 (permalink)  
Antiguo 27/11/2005, 19:49
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Y ...necesariamente debes hacerlo con archivos de texto plano? ..

No hay nada más facil que lo que pretendes hacerlo sobre Base de datos (Mysql por ejemplo) usando SQL .. y más complicado si usas archivos de texto plano.

En principio .. si usas archivos de texto plano debes gestionar tu mismo algún tipo de "identificator" para cada "registro" (línea de tu archivo de texto plano que contienen las "consultas"). De esa manera podrás recorrer ese archivo en busca de "consultas" y cada respuesta asociarlas bajo ese identificador ..

Es decir .. tu archivo de "consultas" debería ser algo tipo:

id | consulta | etc campos ....
----------------
1 | consulta1
2 | consulta2
X | consultaX


¿Por qué el "id" .. si puedo contrar n° de líneas? .. Justamente para solventar el problema de perdida de "integridad" (correspondencia) cuando tengas que eliminar una de esas "consultas".

En tu archivo de "respuestas" .. generarías respuetas bajo la estructura

id_respuesta | id_consulta | respuesta | etc campos
--------------------------------------------
1 | 1 | respuesta para consulta 1
2 | 3 | respuesta para consulta 3
4 | 1 | otra respuesta para consulta 1

No sé si todavía quieres seguir usando archivos de texto plano .. pero definitivamente esto es mucho más versatil y rápido de implementar usando alguna Base de datos (que para eso se inventaron, si es que puedes disponer de ellas, pero tal vez no las usas por qué no conces el tema).

Un saludo,
  #3 (permalink)  
Antiguo 28/11/2005, 16:36
 
Fecha de Ingreso: marzo-2003
Mensajes: 225
Antigüedad: 21 años, 1 mes
Puntos: 0
te voy a hacer caso

amigo cluster, gracias por tu rápida respuesta,

sí, tengo base de datos mysql; de hecho he "trasteado"algo con ella, he creado una tabla con su formulario para añadir registros via web, pero el tener que asociar una respuesta (o más) a un registro determinado, y además construir los formularios para transmitir la información, me parece bastante más complicado,

si me orientas un poco te lo agradecería,

un saludo y gracias por anticipado,
  #4 (permalink)  
Antiguo 29/11/2005, 05:59
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Te recomiendo ir leyendo algo sobre Base de datos (diseño, normalización e integridad referencial) en sitios como:

www.mysql-hispano.com

Veras que no es nada complicado.

De hecho, .. las "tablas" de una Base de datos que deberías usar es exactamente el mismo modelo que te sugerí.

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:27.