Foros del Web » Programando para Internet » PHP »

Ficheros

Estas en el tema de Ficheros en el foro de PHP en Foros del Web. Bueno en primer lugar decir que soy nuevo en el foro, así que daros un saludo a todos. Si os parece expongo la situación y ...
  #1 (permalink)  
Antiguo 28/12/2009, 09:03
 
Fecha de Ingreso: diciembre-2009
Mensajes: 9
Antigüedad: 14 años, 4 meses
Puntos: 0
Ficheros

Bueno en primer lugar decir que soy nuevo en el foro, así que daros un saludo a todos. Si os parece expongo la situación y me deciis que puedo hacer.

El caso es que tengo que programar una web 2.0, y una de las cosas que tengo que implementar un boletín de noticias (Newsletter). He visto que hay por internet sistemas de boletín de pago, que te permiten gestionar un boletín, enviarlo por e-mail y a la vez recaptar unas estadísticas de las visitas a cada link, etc.. para ver el progreso y el interés del contenido. He pensado en programar mi propio boletín, en html + javascript hacer la base de este y para recaptar las estadísticas había pensado en crear unas variables inicializadas a 0 para cada link del boletín, e incrementarlas a cada visita y para guardar esta información escribirla en un fichero en modo "w+". Entonces a la pròxima visita, que lea el fichero, incremente los valores segun las visitas y lo guarde de nuevo. El problema viene a la hora de crear el fichero, según tengo entendido en javascript solo no se puede trabajar con ellos (Se necesitan Applets). Pero en PHP si, el caso es que tengo programada la parte referida a crear el fichero, muy sencilla, es un simple fopen(...); pero no me crea el fichero en ningún lado. El codigo de creación del fichero es este:

<?php
$DescriptorFichero = fopen("prueba.txt","w+");

if($DescriptorFichero == false)
{
die("No se ha podido crear el archivo.");
}
else
{
$string1 = "Linea 1";
fputs($DescriptorFichero,$string1);

$string2 = "Linea 2";
fputs($DescriptorFichero,$string2);

fclose($DescriptorFichero);
}
?>

El caso es que no se donde crea el fichero, ni si lo crea. Si no lo creara me diria en teoria me lanzaria el mensaje del die(""); pero no me lo lanza. Entonces deduzco que puede crearlo, pero no se donde.

Lo he probado con el index.html subido a internet, o desde el PC abriendo el web localmente. Pero nada, ni en la raíz local, ni en la raíz del FTP se crea el fichero :S


Gracias de antemano!!

(PD: si alguien sabe porque, explicadlo para un novato, que PHP no domino, soy más de C)
  #2 (permalink)  
Antiguo 28/12/2009, 10:52
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ficheros

para empezar, eso no funciona en archivos .html debe ser .php (al menos no normalmente)

después, el archivo se crea según el primer argumento de la función fopen()

por ejemplo, si colocas solo un nombre, se creará en el mismo lugar donde se ejecuta el script...

NOTA que por ser novato, deberías reunir mas información y aprender algo mas allá de lo mínimo... revisa las FAQ's y Wiki del foro...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 28/12/2009, 19:59
 
Fecha de Ingreso: diciembre-2009
Mensajes: 9
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Ficheros

Hola, gracias por la corrección respecto a lo del fichero en extension .php, pero aun así, no crea el fichero .txt por ninguna parte, voy a poner el codigo del index.html i el del func.php:


INDEX.HTML
Código HTML:
<html>
<head></head>

<body>

<form method="post" action="func.php">
     <input type="submit">
</form>

</body>
</html> 
FUNC.PHP

Código PHP:
<?php
    $DescriptorFichero 
fopen("prueba.txt","w+");

    if(
$DescriptorFichero == false)
    {
       die(
"No se ha podido crear el archivo");
    }
    else
    {
        
$string1 "Linea 1";
        
fputs($DescriptorFichero,$string1);

        
$string2 "Linea 2";
        
fputs($DescriptorFichero,$string2);

        
fclose($DescriptorFichero);
    }
?>
Ahora que es lo que se supone que falla? He probado ejecutar el index.html en mi PC en una carpeta los dos archivos, y no me genera ningun fichero prueba.txt, y he probado también subiendolo al FTP y dándole permisos CHMOD 777 y nada. Tampoco me genera un archivo en la raíz donde se encuentran los dos archivos index y func.

No creo que esto sea tan complicado, en otros lenguages es simplemente hacer el fopen en modo W/W+, A/A+, y ya te crea el fichero si no existe. No entiendo porque aquí no


Gracias!
  #4 (permalink)  
Antiguo 28/12/2009, 20:12
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ficheros

creo que el primer paso es comprobar que funciona PHP ... ¿si lo tienes instalado??

¿estas cargando el script vía tu localhost??
o bien, ¿como es que estas ejecutando tus archivos??

okey... creo que todo esto si lo tienes bien... haz lo siguiente
Código PHP:
<?php
echo 'Hola mundo, uso PHP ' phpversion();
?>
e intenta ejecutarlo, ¿que resulta??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 29/12/2009, 08:58
 
Fecha de Ingreso: diciembre-2009
Mensajes: 9
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Ficheros

Graciass!! ahora si lo ejecuto en mi servidor subiendo los archivos HTML y PHP me genera un fichero en la raíz del servidor, un Prueba.txt.

Ahora mi pregunta es, se podría hacer via localhost? Pero sin complicaciones tipo servidor Apache ni nada, simplemente guardar el archivo PHP y ejecutar el HTML en el ordenador, sin conexión y que el codigo en PHP sea interpretado? Si se puede, sería mucho más cómodo así para hacer las pruebas y subir el definitivo a internet, que no ir subiéndolo para probarlo!

Muchas Gracias!!!
  #6 (permalink)  
Antiguo 29/12/2009, 09:04
Avatar de TKZeXe  
Fecha de Ingreso: diciembre-2009
Ubicación: Flowers
Mensajes: 166
Antigüedad: 14 años, 4 meses
Puntos: 6
Respuesta: Ficheros

usabas .html y querias hacer una web 2.0 ?

hay que ser mas profesional a la hora de decir "si" a un trabajo que no tienes ni la menor idea de lo que significa php-apache y sus usos.

asi los unicos que quedan mal somos todos.

pd: localhost se puede ejecutar codigo php sin conexion internet solo levantando el server de apache y teniendo alguna version de php.

saluds.
  #7 (permalink)  
Antiguo 29/12/2009, 09:07
 
Fecha de Ingreso: diciembre-2009
Mensajes: 9
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Ficheros

haber.. en primer lugar no estoy usando html.. Para la gran parte del trabajo estoy usando WordPress y Flash + ActionScript, pero para crear un Newsletter con retorno estadístico pensé en intercalar una web html con PHP para que generara el fichero estadístico de visitas.

En segundo lugar, ya se que en el localhost y con un server Apache con PHP 4 o superior instalado, puedes ejecutar el script, solamente preguntaba si hay alguna otra forma de hacerlo, porque no estoy trabajando desde mi ordenador, y preferiria no tener que instalarle Apache's, ni otras cosas.
  #8 (permalink)  
Antiguo 29/12/2009, 09:15
Avatar de TKZeXe  
Fecha de Ingreso: diciembre-2009
Ubicación: Flowers
Mensajes: 166
Antigüedad: 14 años, 4 meses
Puntos: 6
Respuesta: Ficheros

si no tengo un interprete, puedo interpretar codigo php?
si no tengo casa, hay alguna forma de saltar en ella?

nose si tu pregunta esta mal formualda, pero me estas diciendo algo similar.

puede ser que quieras ejecutar codigo CLI en php, pero igualmente necesitas instalar php.

salds
  #9 (permalink)  
Antiguo 29/12/2009, 09:16
 
Fecha de Ingreso: diciembre-2009
Mensajes: 9
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Ficheros

Ok gracias ;)
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 17:57.