Comunidad de diseño web y desarrollo en internet online

Ayuda con contador de visitas en flash

Citar            
MensajeEscrito el 06 Jul 2009 11:33 pm
Hola a todos, de nueva cuenta necesito de sus grandes conocimientos, espero me puedan ayudar ^^ ...
El asunto es que hize un contador de visitas con php y flash, el problema esque cuando subo la pagina no pasa de la visita numero 1...
este codigo es el que puse en flash

Código ActionScript :

loadVariablesNum ("contador.php", 0);


y este el que puse en php

Código PHP :

<?

$filename = "contador.txt";
$archivo = file($filename,"r");
$contador = $archivo[0];
$contador++;
$fp = fopen( $filename,"w");
fwrite($fp, $contador);
fclose($fp);
echo "&contador=$contador&";

?>


tambien cambie el permiso de FTP a 777...

ya no se que estoy haciendo mal, por favor alguien que me auxilie, porque mis conocimientos en programacion estan en pañales... o tal vez menos :oops:

Por BERRY24

10 de clabLevel



 

MEXICO

firefox
Citar            
MensajeEscrito el 07 Jul 2009 12:35 am
el contador deberia sumar 1
$contador+1;
No estoy seguro pero creo que por alli esta el temilla ;)

Por checheno

528 de clabLevel

3 tutoriales

 

Mar del Plata - Argentina

firefox
Citar            
MensajeEscrito el 07 Jul 2009 12:52 am
Otro dato importante es que tu txt no este vacio sino que tenga un 0 (cero) al comenzar, aunque no es habitual suele pasar que no funcione sin el cero y otras veces si, depende del servidor y vaya a saber dios de que otra cosa :)

Por checheno

528 de clabLevel

3 tutoriales

 

Mar del Plata - Argentina

firefox
Citar            
MensajeEscrito el 07 Jul 2009 01:07 am
Por las dudas te dejo uno listo para usar

Contador de visita simple:

Primero creamos un fla al que llamaremos visitas
Le agregamos un campo de texto dinamico, al cual instanciamos (nombre de instancia) con el nombre visitas_txt.
Al primer fotograma o al fotograma donde este nuestro texto dinamico, le agregamos el siguiente codigo :

Código ActionScript :

//Detenemos la película
stop();
//Creamos una instancia de LoadVars
var cargadorVisitasJM:LoadVars = new LoadVars();
//Hacemos un llamado al archivo en PHP el cual nos devolverá
//el número de visitas.
cargadorVisitasJM.load("http://www.tusitio.com/visitas.php");
//Función que atiende al llamado onLoad


cargadorVisitasJM.onLoad = function(exito){
        if (exito) {
                //Si se cargaron las visitas correctamente
                //se desplegará en el cuadro de texto que creamos anteriormente
                visitas.text = this.totalVisitas;
        } else {
                //Si no se logró cargar las visitas se desplegará un error.
                visitas.text = "Ocupado";
        }
}

Ahora:
Creamos un php al que llamaremos visitas que ira en la misma carpeta que el fla y le colocamos el siguiente codigo

Código PHP :

 <?php
  //Creamos la variable del archivo donde se guardarán el número de visitas
   $rutaArchivo = "visitas.txt";
   
   //Abrimos el archivo en modo de lectura
   $elArchivo = fopen($rutaArchivo, "r");
   
   //Leemos el contenido del archivo
   $totalVisitas = fread($elArchivo, filesize($rutaArchivo));
   
   //Cerramos la conexión al archivo cuando lo hayamos leido.
   fclose($elArchivo);
   
   //Abrimos nuevamente el archivo para agregar los datos.
   $elArchivo = fopen($rutaArchivo, "w");
   
   //Aumentamos el contador en 1. RECORDA QUE ACA VA EL + 1 para que sume;
   $totalVisitas = $totalVisitas+1;
   
   //Reemplazamos el antiguo valor, por la nueva cantidad de visitas.
   fwrite($elArchivo, $totalVisitas);
   
   //Cerramos la conexión al archivo
   fclose($elArchivo);
   
   //Enviamos el número de visitas a Flash
   echo "&totalVisitas=".$totalVisitas;
   ?>


Luego de esto creamos un txt en un bloc de notas con el mismo nombre que el fla y el php.

Y lo guardamos con el valor 0 (escriban un cero) dentro de el.

Por checheno

528 de clabLevel

3 tutoriales

 

Mar del Plata - Argentina

firefox
Citar            
MensajeEscrito el 07 Jul 2009 07:15 am
Este mismo codigo tambien es util para realizar encuestas dinamicas aunque no lo creas, como es simple de utilizar y modificar puedes crearlas facilmente, ojo no son nada seguras pero para algo simple va bien...
Saludos

Por checheno

528 de clabLevel

3 tutoriales

 

Mar del Plata - Argentina

firefox
Citar            
MensajeEscrito el 07 Jul 2009 03:55 pm
Hola BERRY, Aquí te dejo un ejmplo pequeño de contador muy similar al tuyo:

Codigo en el flash para el fotograma donde estara localizado el Texto Dinámico de Nombre VAR "visitanum"

Codigo Flash:

Código ActionScript :

loadVariables("contador.php",_root);


Codigo PHP de nombre "contador"

Código PHP :

<?
$filename = "visitas.txt";
$archivo = file($filename,"r");
$visitas = $archivo[0];
$visitas++;
$fp = fopen( $filename,"w");
fwrite($fp, $visitas);
fclose($fp);
echo "&visitanum=$visitas&";
?>


Adicional a esto adjunta un un archivo TXT con el contenido "0"

Saludos espero esto resuelba el dilema...

Por JCésar

38 de clabLevel



 

Negocios por Internet

msie7
Citar            
MensajeEscrito el 07 Jul 2009 03:58 pm
A si lo elvidaba el archivo TXT debe de tener el nombre "visitas" , saludos.

Por JCésar

38 de clabLevel



 

Negocios por Internet

msie7
Citar            
MensajeEscrito el 07 Jul 2009 04:09 pm

Por JCésar

38 de clabLevel



 

Negocios por Internet

msie7
Citar            
MensajeEscrito el 09 Sep 2009 12:03 am
Hola JCésar, trate de seguir tu mini tutorial por cierto muy bueno, pero no pasa mi contador del número 1, hice todos los pasos que pones, pero sigo con mi numero 1, lo he probado en varias computadoras y sigue en el 1; que estara mal?? gracias.

Por stalin0x

5 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 May 2010 09:53 pm
He seguido los pasos de Checheno y el swf no pinta las visitas:
http://www.alexprellezo.es/visitas.html

Sin embargo, si compruebo el php directamente sí funciona:
http://www.alexprellezo.es/visitas.php

¿Alquien sabe qué puede estar pasando?

Gracias.

Por AlenLoop

35 de clabLevel



 

firefox
Citar            
MensajeEscrito el 19 Ago 2010 01:36 pm
Sigo paso por paso el tutorial y a la hora de publicar del 1 no pasa el contador. En el servidor le doy permisos de escritura y lectura tanto al txt como al php. No tengo ni idea que puede fallar.

Por sopas44

4 de clabLevel



 

msie8
Citar            
MensajeEscrito el 21 Ago 2010 03:42 am
Me sumo tambien a esta GRAN confusion....

He estado como loko...probando y probando este contador y nada de nada...
no sale del maldito 1

Menos mal que era "FACIL" insertar un contador de visitas....

Gracias...ojala que a alguien se le ocurra algo x ahi...

Por hecpok

43 de clabLevel



 

firefox
Citar            
MensajeEscrito el 21 Ago 2010 05:31 am
Prueben esto amigos , lo probe y me funciono a la perfeccion, sin hacer nada extraordinario....ni en PHP ni nada de nada...

<?php
$archivo = "contador.txt";
$abre = fopen($archivo,"r");
$total = fread($abre, filesize($archivo));
fclose($abre);
$abre = fopen($archivo, "w");
$total = $total + 1;
$grabar = fwrite($abre, $total);
fclose($abre);
echo "&contador=$total&";
?>

Saludos a todos

Por hecpok

43 de clabLevel



 

firefox
Citar            
MensajeEscrito el 23 Ago 2010 08:42 am
Eso es lo que ponemos en nuestro php HECPOK, y nada de nada. Otra solución?

Por sopas44

4 de clabLevel



 

msie8
Citar            
MensajeEscrito el 23 Ago 2010 01:18 pm
Amigos, si te fijan, los otros codigos php colocaban a que se abriera el archivo txt de forma incorrecta, lo hacian desde la variable que solo tenia su nombre, y no desde la variable que lo abria realmente con la funcion fopen.

Explicando el archivo creo que se daran cuenta cual es el error que han tenido los anteriores codigos (no digo que todos los anteriores estaban mal, sino que he visto otros post con los codigos erroneos):

Código PHP :

<?php
$archivo = "contador.txt"; //1
$abre = fopen($archivo,"r"); //2
$total = fread($abre, filesize($archivo)); //3
fclose($abre); //4
$abre = fopen($archivo, "w"); //5
$total = $total + 1; //6
$grabar = fwrite($abre, $total); //7
fclose($abre); //8
echo "&contador=$total&"; //9
?>


1. Se defina la variable $archivo con el nombre del txt. En el ejemplo este archivo de texto esta en la misma carpeta que el documento php, si lo tienes en una carpeta aparte debes asignarselo.

2. Se define la variable $abre para abrir este archivo de texto, el segundo parametro "r" significa que sera solo de lectura, pues r significa "read".

3. La variable $total realiza la lectura del txt ya abierto, esta variable es la que tiene el numero de visitas anteriores, si ya habian realizado antes 4 visitas (por ejemplo), esta variable tendra como valor el numero 4. El error antes era que se pretendia leer el codigo mediante la variable $archivo que solo tenia su nombre, en vez de leerlo mediante la variable $abre que es la que esta abriendo el archivo de texto.

4. Logico, se cierra el txt abierto.

5. Se define nuevamente la variable $abre para abrir el archivo txt pero esta ves con el parametro secundario "w" que significa "write".

6. Habiamos dicho que la variable $total tenia el numero de visitas realizado anteriormente, ahora le sumaremos 1 para que se cuente esta nueva visita.

7. Aqui se modifica el archivo de texto, guardandola con el nuevo valor de la variable $total, que si antes era 4 ahora es 5. Se usa la funcion predeterminada fwrite para realizar el cambio.

8. Se cierra el archivo de texto, ya no se necesita.

9. Finalmente, si usaràs este archivo de texto para leerlo en una pelicula Flash, ahi se envia a la pelicula la variable (Actionscript) contador con el valor de la variable $total. Si usaras este contador para un archivo txt basta con que cambies esta linea por esta:

Código PHP :

echo "Contador = ".$total;


Este codigo sirve al 100%. Ademas, si el archivo txt no existe el solo lo crea, por lo que la primera vez puede que de fallo pero al segundo intento funciona normalmente.

Saludos

Por Quarterback

171 de clabLevel

1 tutorial

Genero:Masculino  

Santa Marta, Colombia

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.