Foros del Web » Programando para Internet » PHP »

crear archivo...

Estas en el tema de crear archivo... en el foro de PHP en Foros del Web. Hola a todos: Tengo un modilo en el cual hago unas operaciones y muestro los resultados en la forma. Estoy haciendo por separado una prueba ...
  #1 (permalink)  
Antiguo 10/07/2008, 12:49
Avatar de indy1508  
Fecha de Ingreso: mayo-2007
Ubicación: Monterrey, N.L. México.
Mensajes: 212
Antigüedad: 17 años
Puntos: 0
Pregunta

Hola a todos:

Tengo un modilo en el cual hago unas operaciones y muestro los resultados en la forma.

Estoy haciendo por separado una prueba de almacenamiento de unos datos para crear un archivo.txt para posteriormente poder cargar la informacion, muestro los datos y un boton de "guardar".

Al momento de almacenar los datos se despliega un mensaje que dice "archivo guardado"

Aqui pongo el cógido de la pagina donde capturo los datos (prueba.php):

Código PHP:
<form name="form1" method="post" action="guarda_archivo.php">
  <
label>
  
archivo
  
<input name="archivo" type="text" id="archivo">
  <
br>
  <
br>
  
nombre
  
<input name="nom" type="text" id="nom">
  </
label>
  <
p>docimilio
    
<label>
    <
input name="dom" type="text" id="dom">
    </
label>
  </
p>
  <
p>colonia
    
<input name="col" type="text" id="col">
  </
p>
  <
p>ciudad
    
<input name="ciudad" type="text" id="ciudad">
    <
label>
    <
input type="submit" name="Submit" value="Enviar">
    </
label>
  </
p>
</
form
y aqui el de la pagina que los recibe(guarda_archivo.php):

Código PHP:
<?php
function guardar_datos($nombre,$domicilio,$colonia,$ciudad,$nombre_archivo,$d,$dato)
{
    
// Guardar datos en un archivo
    
echo 'nombre: '.$nombre;
    for(
$i=1;$i<=3;$i++)
        {echo 
$dato[$i];}
    
    
define('nombre_archivo',$nombre_archivo);
    
$archivo=fopen(nombre_archivo,'w');
    
fputs($archivo"$nombre\n");
    
fputs($archivo"$domicilio\n");
    
fputs($archivo"$colonia\n");
    
fputs($archivo"$ciudad\n");
    for(
$i=1;$i<=3;$i++)
        {
fputs($archivo"$dato[$i]\n");}
    
fclose($archivo);
}
?>
<body>
<p>
  <?php
    $nombre_archivo
=$_POST[archivo];
    
$nombre=$_POST[nom];
    
$domicilio=$_POST[dom];
    
$colonia=$_POST[col];
    
$ciudad=$_POST[ciudad];
    
$dato[1]='prueba1';
    
$dato[2]='prueba2';
    
$dato[3]='prueba3';
    
$d='';
    for(
$i=1;$i<=3;$i++)
        {
$d=$d $dato[$i] . '/';}



if(!
$_POST[grabar]){
?>
</p>
<p>&nbsp;</p>
<form id="form1" name="form1" method="post" action="">
  <input name="grabar" type="submit" id="grabar" value="Grabar" />
</form>
<?php }
else
    {
    echo 
$nombre_archivo.'<br>';
    echo 
$nombre.'<br>';
    echo 
$domicilio.'<br>';
    echo 
$colonia.'<br>';
    echo 
$ciudad.'<br>';
    
guardar_datos($nombre,$domicilio,$colonia,$ciudad,$nombre_archivo,$d,$dato);
    echo 
'Archivo guardado';}
?>
</body>
Bueno, en la pagina de "guarda_archivo.php" me marca errores con las variables que recibo de la forma que se llama "prueba.php" y almaceno en $nombre_archivo, $nombre, $domicilio.. no pasa sus valores, pero con la variable $dato (que es una array) y que creo y asigno valores en la misma forma si me muestra los datos enviados.

Cabe mencionar que al principio no pasaba valores de otra pagina, todos los creaba en la misma y al ejecutarla me generaba el archivo de texto.

Espero sus comentarios.

Saludos.

Alguien que comente...

Última edición por GatorV; 10/07/2008 a las 14:41
  #2 (permalink)  
Antiguo 10/07/2008, 13:58
Avatar de alonsoandres  
Fecha de Ingreso: enero-2004
Ubicación: Matamoros, Tamaulipas
Mensajes: 305
Antigüedad: 20 años, 3 meses
Puntos: 3
Respuesta: crear archivo...

hola. creo que tu erro es el siguiente. Deberias de declarar las variables antes de usarlas en la funcion, porque si las usas antes de declararlas estarian en blanco.

Salu2
  #3 (permalink)  
Antiguo 10/07/2008, 15:30
Avatar de indy1508  
Fecha de Ingreso: mayo-2007
Ubicación: Monterrey, N.L. México.
Mensajes: 212
Antigüedad: 17 años
Puntos: 0
Respuesta: crear archivo...

Hola Alonsoandres:

Gracias por tu comentario, ya solucioné el problema, cambié $_POST por $_GET y ya puedo manipular las variables.

Saludos.
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 00:56.