entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

problema con fopen en php

Buenas noches,

Mediante ajax envio un texto a php que quiero escribir a un fichero. Hago esto:

<?php

    $date = date('Y-m-d H:i:s');
    $fichero_salida = $date . "-NP.html";
    $file = fopen("C:\xampp\htdocs\Contabilidad\".$fichero_salida, "a+");
    fwrite($file, trim($_REQUEST['pagina'] . PHP_EOL));
    fclose($file);

    echo $fichero_salida . 'creada';

?>

Pero me da un warning en la linea del fopen. Quiero que se cree el archivo nuevo. El error es:

<b>Warning</b>:  fopen(C:mpp\htdocs\Contabilidad\2015-06-02 22:28:44-NP.html): failed to open stream: Invalid argument in <b>C:\xampp\htdocs\Contabilidad\controladores\guardarFacturas.php</b> on line <b>5</b>

GRACIAS.

1 Respuesta

1voto

Leonardo-Tadei Puntos227320

No uses : en el nombre del archivo, ya que está reservado por el sistema de archivos del DOS para indentificar unidades de disco.
Usar espacios tampoco es una buena idea y es posible que tengas que "escaparlos" poniendo una barra invertida delante.

Saludos!

0voto

JonnyReyes comentado

Buenas Leonardo,

He seguido tus consejos pero continuo igual

<b>Warning</b>:  fopen(C:\xampp\htdocs\Contabilidad\archivo.txt): failed to open stream: Invalid argument in <b>C:\xampp\htdocs\Contabilidad\controladores\guardarFacturas.php</b> on line <b>6</b><br />

<br />

Obtengo este error en la linea 6 que es la siguiente:

$file = fopen("C:\xampp\htdocs\Contabilidad\archivo.txt", "a+");

1voto

Leonardo-Tadei comentado

Si estás en una pataforma MS Windows, tenés que escapar la barra invertida, que es la barra de escape:

$handle = fopen("c:\\folder\\resource.txt", "r");

También fijate que la ruta exista y que sea el nombre que ves desde una consola (la interfaz gráfica de MS Windows te muestra nombres largos de archivos que realmente no existen)

Saludos!

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta