Foros del Web » Programando para Internet » PHP »

Problema al crear archivo TXT en PHP

Estas en el tema de Problema al crear archivo TXT en PHP en el foro de PHP en Foros del Web. Bueno el tema es que quiero crear un archivo TXT , la parte del codigo ya la tengo toda, el tema es que no me ...
  #1 (permalink)  
Antiguo 12/05/2010, 11:09
Avatar de aguila_393  
Fecha de Ingreso: septiembre-2007
Ubicación: Argentina
Mensajes: 406
Antigüedad: 16 años, 6 meses
Puntos: 1
Problema al crear archivo TXT en PHP

Bueno el tema es que quiero crear un archivo TXT , la parte del codigo ya la tengo toda, el tema es que no me crea el archivo .txt . Tengo montado todo en mi pc con el appserv y los codigos son estos:
PAGINA 1

Código PHP:
Ver original
  1. <html>
  2. <head>
  3. <title>Problema</title>
  4. </head>
  5. <body>
  6.  
  7. <form method="post" action="pagina2.php">
  8. Ingrese su nombre:
  9. <br/>
  10. <input type="text" name="nombre">
  11. <br/>
  12. Ingrese su direccion:
  13. <br/>
  14. <input type="text" name="direccion">
  15. <br/><br/>
  16. Seleccione el tipo de pizza que desea pedir:
  17. <br/>
  18. <input type="checkbox" name="jyq">Jamon y Queso
  19. <br/>
  20. Cantidad: <input type="text" name="cjyq">
  21. <br/><br/>
  22. <input type="checkbox" name="napo">Napolitana
  23. <br/>
  24. Cantidad: <input type="text" name="cnapo">
  25. <br/><br/>
  26. <input type="checkbox" name="muzza">Muzzarella
  27. <br/>
  28. Cantidad: <input type="text" name="cmuzza"
  29. <br/><br/>
  30. <input type="submit" value="Enviar Pedido">
  31. </form>
  32.  
  33. </body>
  34. </html>

PAGINA 2
Código PHP:
Ver original
  1. <html>
  2. <head>
  3. <title>Problema</title>
  4. </head>
  5. <body>
  6.  
  7. <?php
  8.  
  9. if (isset($_REQUEST['jyq']))
  10. {
  11. $jyq="Jamon y Queso";
  12. }
  13. else
  14. {
  15. $jyq="No se selecciono Jamon y Queso";
  16. }
  17. $tjyq= $_REQUEST['cjyq'];
  18.  
  19. $txt=fopen("pedidos.txt","a") or die("Hubo un error al abrir el archivo pedidos.txt");
  20. fputs($txt,$_REQUEST['nombre']);
  21. fputs($txt,"\n");
  22. fputs($txt,$_REQUEST['direccion']);
  23. fputs($txt,"\n");
  24. fputs($txt,$tjyq);
  25. fputs($txt,"\n");
  26. fputs($txt,"-----------------------------");
  27. fputs($txt,"\n");
  28. fclose($txt);
  29. echo "Se guardaron los datos satisfactoriamente.";
  30.  
  31. ?>
  32.  
  33. </body>
  34. </html>

El tema es que no me muestra directamente nada, ni crea el archivo. Y en la pagina de la cual estoy sacando los ejercicios me muestra el ultimo "echo" pero no puedo ver si en verdad se guardaron o no los datos.
  #2 (permalink)  
Antiguo 12/05/2010, 11:15
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: Problema al crear archivo TXT en PHP

He probado yo mismo tu código, y a mi me funciona perfectamente, y no veo ningún error en el código, ¿que sistema operativo utilizas? No creo que el problema esté en el código.


Un saludo
  #3 (permalink)  
Antiguo 12/05/2010, 11:20
Avatar de aguila_393  
Fecha de Ingreso: septiembre-2007
Ubicación: Argentina
Mensajes: 406
Antigüedad: 16 años, 6 meses
Puntos: 1
Respuesta: Problema al crear archivo TXT en PHP

Cita:
Iniciado por Heli0s Ver Mensaje
He probado yo mismo tu código, y a mi me funciona perfectamente, y no veo ningún error en el código, ¿que sistema operativo utilizas? No creo que el problema esté en el código.


Un saludo
Windows Xp y lo estoy probando con el Appserv.

Yo creo tambien que el problema esta en mi pc, pero no logro descubrir porque es que no me lo guarda. Si fuera en internet podria ser que no tuviera permisos el directorio, pero en windows no hace falta segun tengo entendido.
  #4 (permalink)  
Antiguo 12/05/2010, 11:23
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: Problema al crear archivo TXT en PHP

Prueba este script, en otro archivo diferente pero que este en la misma carpeta que el archivo que crea el script, y dime cual es el resultado:

Código PHP:
<?php
if(file_exists("pedidos.txt"){
    echo 
"El fichero si que existe";
} else {
    echo 
"El fichero no existe";
}
?>

Pruebalo y dime cual es la salida que te muestra en pantalla.

Un saludo
  #5 (permalink)  
Antiguo 12/05/2010, 11:25
Avatar de aguila_393  
Fecha de Ingreso: septiembre-2007
Ubicación: Argentina
Mensajes: 406
Antigüedad: 16 años, 6 meses
Puntos: 1
Respuesta: Problema al crear archivo TXT en PHP

No muestra ningun mensaje. Quizas sea un problema del Appserv?
  #6 (permalink)  
Antiguo 12/05/2010, 11:26
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: Problema al crear archivo TXT en PHP

Creo que me equivoque en el script, falta un ).

Código PHP:
<?php
if(file_exists("pedidos.txt")){
    echo 
"El fichero si que existe";
} else {
    echo 
"El fichero no existe";
}
?>
Pero a pesar de tener un error, el appserv no te lo puso en pantalla, si no te lo muestra en pantalla suele crear un log de errores, deberías buscarlo y revisarlo, quizás ahí esté la solución a tu problema.
  #7 (permalink)  
Antiguo 12/05/2010, 11:39
Avatar de X3r0s  
Fecha de Ingreso: febrero-2010
Mensajes: 90
Antigüedad: 14 años, 2 meses
Puntos: 3
Respuesta: Problema al crear archivo TXT en PHP

Los archivos correspondientes tienen atributos 777?
  #8 (permalink)  
Antiguo 12/05/2010, 11:39
 
Fecha de Ingreso: mayo-2010
Mensajes: 39
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Problema al crear archivo TXT en PHP

no entiendo tu pregunta... pero para leer archivos de textos.. podes usar

"Readfile"
  #9 (permalink)  
Antiguo 12/05/2010, 11:40
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: Problema al crear archivo TXT en PHP

Cita:
Iniciado por X3r0s Ver Mensaje
Los archivos correspondientes tienen atributos 777?
En windows los ficheros no tienen ese tipo de atributos ni privilegios.

Un saludo
  #10 (permalink)  
Antiguo 12/05/2010, 11:40
Avatar de aguila_393  
Fecha de Ingreso: septiembre-2007
Ubicación: Argentina
Mensajes: 406
Antigüedad: 16 años, 6 meses
Puntos: 1
Respuesta: Problema al crear archivo TXT en PHP

Cita:
Iniciado por Heli0s Ver Mensaje
Creo que me equivoque en el script, falta un ).

<?php
if(file_exists("pedidos.txt")){
echo "El fichero si que existe";
} else {
echo "El fichero no existe";
}
?>
Ya reinicie pero sigue sin funcionar, si nadie sabe porque puede ser voy a pasar a reinstalar el appserv.
  #11 (permalink)  
Antiguo 12/05/2010, 11:41
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: Problema al crear archivo TXT en PHP

Relee mi post, lo edité, de momento no hace falta que lo reinstales si ejecuta bien esa sentencia

Un saludo
  #12 (permalink)  
Antiguo 12/05/2010, 11:42
Avatar de aguila_393  
Fecha de Ingreso: septiembre-2007
Ubicación: Argentina
Mensajes: 406
Antigüedad: 16 años, 6 meses
Puntos: 1
Respuesta: Problema al crear archivo TXT en PHP

Cita:
Iniciado por Heli0s Ver Mensaje
Relee mi post, lo edité, de momento no hace falta que lo reinstales si ejecuta bien esa sentencia

Un saludo
Donde es que lo genera a este log que mencionas?
  #13 (permalink)  
Antiguo 12/05/2010, 11:44
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: Problema al crear archivo TXT en PHP

No tiene porque crearlo, en algunos hostings se crea automaticamente, error_log en la carpeta raiz, pero appserv no me suena que haga eso, añade error_reporting(E_ALL) al principio del script para que muestre errores, y prueba el script que puse de nuevo, el corregido, y dime que es lo que te muestra en pantalla.

Un saludo
  #14 (permalink)  
Antiguo 12/05/2010, 11:46
Avatar de aguila_393  
Fecha de Ingreso: septiembre-2007
Ubicación: Argentina
Mensajes: 406
Antigüedad: 16 años, 6 meses
Puntos: 1
Respuesta: Problema al crear archivo TXT en PHP

Cita:
Iniciado por Heli0s Ver Mensaje
No tiene porque crearlo, en algunos hostings se crea automaticamente, error_log en la carpeta raiz, pero appserv no me suena que haga eso, añade error_reporting(E_ALL) al principio del script para que muestre errores, y prueba el script que puse de nuevo, el corregido, y dime que es lo que te muestra en pantalla.

Un saludo
Sigue haciendo exactamente lo mismo. No genero nada, ni mostro nada en pantalla.
  #15 (permalink)  
Antiguo 12/05/2010, 11:48
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: Problema al crear archivo TXT en PHP

Y has probado este script de nuevo?

Código PHP:
<?php
if(file_exists("pedidos.txt")){
echo 
"El fichero si que existe";
} else {
echo 
"El fichero no existe";
}
?>
Para saber si el servidor detecta que existe o no?
  #16 (permalink)  
Antiguo 12/05/2010, 11:53
Avatar de aguila_393  
Fecha de Ingreso: septiembre-2007
Ubicación: Argentina
Mensajes: 406
Antigüedad: 16 años, 6 meses
Puntos: 1
Ya logre solucionar el problema. Si a alguno le llega a pasar lo mismo prueben reisntalando el appserv.

Gracias a todos por ayudarme, si necesitan una mano en algo pidan y veo si les puedo ayudar.
  #17 (permalink)  
Antiguo 12/05/2010, 12:16
Avatar de aguila_393  
Fecha de Ingreso: septiembre-2007
Ubicación: Argentina
Mensajes: 406
Antigüedad: 16 años, 6 meses
Puntos: 1
Respuesta: Problema al crear archivo TXT en PHP

Una ultima duda, cuando hago la prueba de esto, el archivo txt que me genera no implementa los espacios que le di, yo los puse como "\n" pero en el txt aparece como un caracter desconocido (un rectangulo) y no me forma los saltos de linea.
  #18 (permalink)  
Antiguo 12/05/2010, 13:40
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Problema al crear archivo TXT en PHP

Usa \r\n o mejor usa la constante PHP_EOL que es para el fin de linea, ya que en diferentes sistemas operativos se usa de forma diferente. Unos usan \n otros \r\n y otros \r.

Saludos.

Etiquetas: txt
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 04:16.