Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] PHP OO Recibir datos de formularios y guardarlo en una tabla

Estas en el tema de Recibir datos de formularios y guardarlo en una tabla en el foro de PHP en Foros del Web. Saludos gente, soy nuevo en el foro me la he pasado buscando en la internet y no encuentro la solución, Hice un formulario HTML con ...
  #1 (permalink)  
Antiguo 03/12/2014, 10:18
 
Fecha de Ingreso: diciembre-2014
Ubicación: guayaquil
Mensajes: 6
Antigüedad: 9 años, 5 meses
Puntos: 0
Pregunta Recibir datos de formularios y guardarlo en una tabla

Saludos gente, soy nuevo en el foro me la he pasado buscando en la internet y no encuentro la solución, Hice un formulario HTML con 3 campos "Nombre Apellido y Edad". lo que debo hacer es recibir los datos de ese formulario y guardarlos en una tabla cuya estructura debe ser la siguiente:

Nombre Apellido Edad

lo que sucede es que al poner los datos en la tabla si vuelvo a abrir el formulario e ingreso nuevos datos ya no me aparecen los datos anteriores en la tabla es decir se borran los ingresos anterior de la tabla, como puedo solucionar eso alguien me ayuda?? aquí les dejo el código

Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Manejo de Archivos PHP</title>
</head>

<body>
<?php
$archivo=fopen("http://localhost/paginasdinamicas/ManjoDeArchivos/ejemplo.txt","r");
$archivo2=fopen("ejemplo.txt","a+");
$cabecera=array("nombre","Apellido","Año de Nacimiento");
$nombre =array( $_GET['nombre']);
$apellidos =array($_GET['apellido']);
$año =array($_GET['año']);
$agenda=array($cabecera,$nombre,$apellidos,$año);

fputs($archivo2,$_GET['nombre']);
 fputs($archivo2,"\n");
 fputs($archivo2,$_GET['apellido']);
 fputs($archivo2,"\n");
 fputs($archivo2,$_GET['año']);
 fputs($archivo2,"\n");
fclose($archivo2);

echo "<table border=1 width=60% cellspacing=0>";
        foreach ($nombre as $celda){
		        echo "<tr>";
                echo "<td> $celda </td>";
                }
				   foreach ($apellidos as $celda){
                echo "<td> $celda </td>";
                }
				   foreach ($año as $celda){
                echo "<td> $celda </td>";
                }
        echo "</tr>";
        
echo"</table>";

$archivo=fopen("http://localhost/paginasdinamicas/ManjoDeArchivos/ejemplo.txt","r");
while (!feof($archivo))
{
	echo fgets($archivo)."<br />";	
	
	}
fclose($archivo);
?>
</body>
</html>
esta es la ejecucion: cuando ya he llenado los 3 campos:


y esto pasa cuando quiero llenar el formulario con nuevos datos solo me aparece la tabla con los ultimos registros.



la persona que me pueda ayudar, con algun consejo o solucion se lo agradezco mucho.

Última edición por JSteven94; 03/12/2014 a las 10:42
  #2 (permalink)  
Antiguo 03/12/2014, 11:19
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 10 meses
Puntos: 379
Respuesta: Recibir datos de formularios y guardarlo en una tabla

Borra esta parte del código
Código PHP:
Ver original
  1. $archivo=fopen("http://localhost/paginasdinamicas/ManjoDeArchivos/ejemplo.txt","r");
  2. while (!feof($archivo))
  3. {
  4.     echo fgets($archivo)."<br />"; 
  5.    
  6.     }
  7. fclose($archivo);
  8. ?>
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 03/12/2014, 11:27
 
Fecha de Ingreso: diciembre-2014
Ubicación: guayaquil
Mensajes: 6
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Recibir datos de formularios y guardarlo en una tabla

Gracias, con eso ya se soluciono este problema



ahora si me aparece solo la tabla, el problema es que solo me aparece el ultimo registro del formulario y no los anteriores, aunque si se guardan en el archivo.

de momento el codigo esta asi:

Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Manejo de Archivos PHP</title>
</head>

<body>
<?php
$archivo=fopen("http://localhost/paginasdinamicas/ManjoDeArchivos/ejemplo.txt","r");
$archivo2=fopen("ejemplo.txt","a+");



fputs($archivo2,$_GET['nombre']);
fputs($archivo2,"\n");
fputs($archivo2,$_GET['apellido']);
fputs($archivo2,"\n");
fputs($archivo2,$_GET['año']);
fputs($archivo2,"\n");
fclose($archivo2);



echo "<table border=1 width=60% cellspacing=0>";
        
		echo"<tr><td>Nombre</td><td>Apellido</td><td>Año de Nacimiento</td></tr>";
		echo"<tr><td>".$_GET['nombre']."</td><td>".$_GET['apellido']."</td><td>".$_GET['año']."</td></tr>";
		 
echo"</table>";


fclose($archivo);
?>
</body>
</html>
y ejecutandolo se ve asi:



como dije asi es como quiero que se vea el unico problema es que no me aparecen los registros anteriores solo el ultimo
  #4 (permalink)  
Antiguo 03/12/2014, 11:49
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 10 meses
Puntos: 379
Respuesta: Recibir datos de formularios y guardarlo en una tabla

Claro necesitas leer nuevamente el archivo y recorrer el contenido con un while. dentro del while necesitas construir la tablar para que muestre el contenido que tienes en el archivo
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #5 (permalink)  
Antiguo 03/12/2014, 12:00
 
Fecha de Ingreso: diciembre-2014
Ubicación: guayaquil
Mensajes: 6
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Recibir datos de formularios y guardarlo en una tabla

Me podrias explicar como hacerlo, nunca antes he usado php y la verdad estoy algo perdido, pero me toco verla este ciclo en la Universidad
  #6 (permalink)  
Antiguo 03/12/2014, 12:41
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 10 meses
Puntos: 379
Respuesta: Recibir datos de formularios y guardarlo en una tabla

Bueno es buen momento de averiguar como hacerlo ya te di la idea, ahora tienes que intentarlo.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #7 (permalink)  
Antiguo 03/12/2014, 13:28
 
Fecha de Ingreso: diciembre-2014
Ubicación: guayaquil
Mensajes: 6
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Recibir datos de formularios y guardarlo en una tabla

Si alguien mas puede aportar algo gracias, no tengo idea como hacerlo sino no hubiese preguntado

Etiquetas: arreglos, formulario, tabla
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 06:04.