Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/03/2007, 02:03
otnica
 
Fecha de Ingreso: marzo-2007
Mensajes: 4
Antigüedad: 17 años
Puntos: 0
Contador y archivo Php

Hola,

Buenas necesito ayuda para solucionar un problema que tengo con un contador para flash. He creado lo siguiente:

TXT ( Contador.txt )
Abrimos el bloc de notas, escribimos un 0 y guardamos como contador.txt. Mediante este archivo de texto iremos guardando el numero de visitas que se han realizado hasta el momento. Al insertar un 0 estamos iniciando nuestro contador de visitas para posteriormente ir modificándolo.

PHP ( Contador.php )
Este código lo recogí del foro forosdelweb y lo aportó un forero llamado Bandit. Es un código muy sencillito, simplificado y ordenado por lo que será ideal para aplicarlo a nuestro ejemplo. El código es el siguiente:

<?
$filename = "contador.txt";
$archivo = file($filename,"r"); //abrimos txt en modo lectura
$contador = $archivo[0];
$contador++;
$fp = fopen( $filename,"w"); //abrimos txt en modo escritura
fwrite($fp, $contador);
fclose($fp); //cerramos txt

echo "&contador=$contador&";
?>En $filename guardamos la dirección real de contador.txt, en $archivo insertamos el contenido del documento txt, en $contador metemos el primer valor del txt que será el número de visitas ( 0 nada mas iniciar el contador ), a continuación incrementamos el contador para contabilizar la nueva visita, y por último escribimos en el txt el numero de visitas actualizado ( fwrite($fp, $contador); ). Lo único que quedaría sería devolver las visitas al fla para que fueran imprimidas en pantalla.

FLA ( Contador.fla )
Dentro del fla lo único que tendremos que hacer es crearnos nuestro interfaz grafico para el contador y crear un campo de texto dinámico que tenga asignado como nombre de variable "contador". A continuación en acciones de frame insertaremos la siguiente sentencia loadVariablesNum("contador.php", 0); que se encargara de recibir la variable contador que viene del php.

Importante

Los tres archivos comentados anteriormente deberán estar en la misma carpeta o tener configuradas las direcciones según su situación en el servidor.

Error: Siempre sale 1. Si una y otra vez obtenéis un 1 en el numero de visitas recibidas esto se debe a que no estamos guardando debidamente en el txt el valor actualizado de la variable contador, por lo que siempre tendremos un 0 en el txt y un 1 en el fla que viene de incrementar en 1 dentro del php. Este problema es debido a una cuestión de Permisos. para poder actualizar el numero de visitas en el txt debemos tener permiso de escritura, sin embargo si nos encontramos con este error esto significara que simplemente tenemos permiso de lectura por lo que solo podemos leer el 0 pero no podemos escribir el nuevo valor actualizado ( 1 ).
¿Como doy permiso de escritura?

El permiso de escritura lo tendréis que dar desde vuestro programa cliente FTP, tendréis que ir hasta la carpeta donde tenéis el txt y hacer botón derecho sobre el mismo, os aparecerá un menú donde encontrareis la opción propiedades / CHMOD, pulsad sobre esta y a continuación marcar la casilla de escritura dentro de public ( publico ) para que se pueda actualizar el txt y por lo tanto el número de visitas, sea quien sea el visitante.

3.- Si quereis insertar el contador en un HTML tened cuidado de meter también este HTML en la misma carpeta para que no haya problemas de direcciones: TXT, PHP, FLA y HTM juntos en la misma carpeta


El problema es que siempre me sigue dando 1 aunque le de todos los persmisos.

Sabeis cual es el problema??, o podeis indicarme otro tutorial para crear un contador que funcione??

Muchas gracias.