Foros del Web » Creando para Internet » Flash y Actionscript »

El contador no me va como quisiera....

Estas en el tema de El contador no me va como quisiera.... en el foro de Flash y Actionscript en Foros del Web. Buenas os agradezco a todos los k me ayudais antes de nada. Vamos a ver, en mi web en flash pongo un cuadro dinamico con ...
  #1 (permalink)  
Antiguo 07/03/2005, 18:57
 
Fecha de Ingreso: febrero-2005
Mensajes: 52
Antigüedad: 12 años, 9 meses
Puntos: 0
El contador no me va como quisiera....

Buenas os agradezco a todos los k me ayudais antes de nada. Vamos a ver, en mi web en flash pongo un cuadro dinamico con nombre de variable "total" y con el actionscript en el frame correspondiente:

loadVariablesNum ("contador.php",0);

Seguidamente hago un "contador.txt" donde pongo un 0 y un "codigo.php" con las siguientes instrucciones:

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

echo "&total=$total&";
?>

Si embargo al subir los archivos al servidor y probar la web me da todo el rato el mismo valor el contador. ¿Es posible porque soy el mismo usuario y solo cambia si entran usuarios con diferente IP? o ¿Hay algun fallo en el codigo o en algo que estoy haciendo? Digo yo que cada vez que entro deberia cambiar no?He probado con otro ordenata k tengo en casa conectao por Rooter y veo lo mismo.....

Gracias por ayudar !!
  #2 (permalink)  
Antiguo 07/03/2005, 21:40
Avatar de Niconirva  
Fecha de Ingreso: marzo-2005
Mensajes: 119
Antigüedad: 12 años, 9 meses
Puntos: 0
A ver si te sirve...!

Mira eh leído tu codigo php y a simple vista parece estar bien. Tienes eso solamente de ActionScript??. Igual me parece un error tipico de permisos. Revisa en tu host que los permisos de los archivos que relizan el trabajo (el php y el contador.txt) esten correctamente seteados, debes habilitar los de ejecución y escritura entre los dos, porque el php lo que haces es abrir el archivo contador.txt, sumarle uno y volverlo a cerrar. Me parece que los permisos que debes usar son chmod 666 ó chmod 777, no recuerdo bien, igual asesorate bien porque yo no se mucho de permisos y son muy importantes!
Por lo pronto para comprobar si es eso, te sirve chmod 777.
Saludos
__________________
"Quien no peca contra la ciencia no descubre nada"
Albert Einstein
  #3 (permalink)  
Antiguo 08/03/2005, 06:10
 
Fecha de Ingreso: febrero-2005
Mensajes: 52
Antigüedad: 12 años, 9 meses
Puntos: 0
Como se mira eso del chmod?

ES k toy algo descolocao pq estoy empezando a programar y eso de los permisos k me comentas no se como lo tengo k mirar, si me puedes hechar una mano t estaria agradecido.


Saludos.

"Ser inteligente es resolver problemas sin generar otros!"
  #4 (permalink)  
Antiguo 08/03/2005, 07:23
Avatar de Niconirva  
Fecha de Ingreso: marzo-2005
Mensajes: 119
Antigüedad: 12 años, 9 meses
Puntos: 0
Sonrisa Es fácil con ftp...

Nose como administras tu hosting, pero si es vía web deberas buscar el tema de los permisos hasta encontrarlos.., porque son muy los paneles de control de todos los hosting.
Si lo haces vía ftp en gral es fácil, para mí el mejor programa es el Flashfxp, en este programa haciendo un click con el botón derecho del mouse sobre el archivo que esta alojado en tu hosting dentro de las opciones del menú que se despliega una es "CHMOD" y entrando allí configuras los permisos!!.
En gral todos los ftp tienen la opciones, por nombrar algunos: CesarFTP,NicoFTP o Cute FTP.
Pero te recomiendo el primero!, saludos!!,
NICO.
__________________
"Quien no peca contra la ciencia no descubre nada"
Albert Einstein
  #5 (permalink)  
Antiguo 08/03/2005, 07:33
Avatar de Niconirva  
Fecha de Ingreso: marzo-2005
Mensajes: 119
Antigüedad: 12 años, 9 meses
Puntos: 0
Sí quieres aprender un poco más sobre permisos leete esto:
http://www.forosdelweb.com/f41/que-chmod-237971/
__________________
"Quien no peca contra la ciencia no descubre nada"
Albert Einstein
  #6 (permalink)  
Antiguo 08/03/2005, 09:34
 
Fecha de Ingreso: febrero-2005
Mensajes: 52
Antigüedad: 12 años, 9 meses
Puntos: 0
He encontrado el apartado chmod pero no me hace los cambios

Hola de nuevo y ante todo gracias por estarme ayudando. Vamos a ver, en el contador.txt y contador.php me sale como chmod:

USER GROUP WORLD

read X X X
write X
execute

que es valor 644

Al cambiar por el 777 que selecciona todos y darle OK me sale de mensaje
"unknown command"

Me puedes ayudar....Gracias de nuevo.
  #7 (permalink)  
Antiguo 08/03/2005, 11:16
Avatar de Niconirva  
Fecha de Ingreso: marzo-2005
Mensajes: 119
Antigüedad: 12 años, 9 meses
Puntos: 0
De acuerdo Comando no reconocido...

"unknown command" Con esto te dice que no reconoce el comando.. pero que te tiro el error??, el ftp o el servidor?, puede que este desabilitado del servidor este tipo de permisos..., si el hosting es pago no debería, Igual como ya te dije antes no soy un experto en permisos, remitete al link que te di antes y consulta sobre permisos ahí que seguro te van a ayudar mucho más que yo.
Si quieres expone el codigo ActionScript que ese si, si quieres te lo corrigo, espero que tengas suerte!, exitosss!
__________________
"Quien no peca contra la ciencia no descubre nada"
Albert Einstein
  #8 (permalink)  
Antiguo 08/03/2005, 11:58
 
Fecha de Ingreso: febrero-2005
Mensajes: 52
Antigüedad: 12 años, 9 meses
Puntos: 0
Bueno ya se k es lo k pasa pq me he puesto en contacto con mi servidor. El tema es que sí es un servidor de pago, y contrate un servicio windows pero no linux y por tanto no me soporta chmod. Literalmente me dicen:

"Con el sistema windows tiene que utilizar las carpetas de default siguientes:
cgi_bin: lectura, ejecución;
public: lectura, escritura;
mdb_database: escritura.
"
Por tanto se te ocurre alguna idea pa k funcione el contador? Gracias por todo de todas maneras si ya no sabes como seguir. ;)
  #9 (permalink)  
Antiguo 08/03/2005, 12:24
Avatar de Niconirva  
Fecha de Ingreso: marzo-2005
Mensajes: 119
Antigüedad: 12 años, 9 meses
Puntos: 0
De acuerdo Ja!, cambiate de host!

Pues si que se me ocurren, tengo dos, a corto y a largo plazo, a largo plazo pensa en cambiarte de hosting!, porque los servidores unix andan mejor y son baratos!!, mucho mas baratos y las prestaciones son las mismas eh incluso mejores! (como en este tipo de situación).
A corto plazo, ya que el IIS tiene las librerias de php (porque aparentemente soporta php, no???); haz el contador sirviendote de tu base de datos!!, utiliza php o tambien puedes usar asp..., la idea es la misma.., el archivo que hace el trabajo toma el número de la bd, le suma uno y lo vuelve a guardar!, es muy fácil de hacer, y debes crear una bd con un solo campo de tipo Double (numerico!). Que va a ser donde va a estar el número de visitas.., se entendio??, cualquier cosa, ya sabes, byee!
__________________
"Quien no peca contra la ciencia no descubre nada"
Albert Einstein
  #10 (permalink)  
Antiguo 08/03/2005, 18:21
 
Fecha de Ingreso: febrero-2005
Mensajes: 52
Antigüedad: 12 años, 9 meses
Puntos: 0
A ver esto k te parece,menos mal k tas por ahi sino, jeje

Hola de nuevo.Los pasos k sigo son estos....(corrigeme okis?)

Necesito crearme en mi DB una tabla llamada "visitas" con un campo entero "visita"(segun tu debe funcionar con double pero tb me da un error) que tenga como valor el 1 y la posibilidad de autoincrementar.

He accedido por mi servidor pero me de un error al crearla (supongo k algo hago mal).

consulta SQL:

CREATE TABLE `visistas` (

`visita` INT DEFAULT '1' NOT NULL AUTO_INCREMENT
)
MySQL ha dicho:

#1075 - Incorrect table definition; There can only be one auto column and it must be defined as a key

Es para poder montar un contador web por medio de flash y php k tengo los codigos:

//Codigo php:

<?php
if ($conex = mysql_connect ("localhost","username_DB","password_DB")){
if ($abro = mysql_select_db ("mi_DB")){

$sql = "SELECT * FROM visitas";
$resultado=mysql_query($sql)or die(mysql_error());
$numero=mysql_fetch_object($resultado);
echo "&visita=$numero->visita&";
$numero->visita ++;
$actualiza= "UPDATE visitas SET visita='$numero->visita'";
mysql_query($actualiza);
}

else{
print ("res");
exit;
}
}

else {
print ("Problemes servidor!");
}
?>

El codigo del actionscript basicamente es este:

form_lv = new LoadVars();
form_lv.onLoad= function(){
visitas.text = form_lv.visita;
}
form_lv.load("visitas.php");


Se pone en el 1 keyframe y sale en un DinamicText de nombre "visistas"

Si ves otra posibilidad estoy abierto a todo con tal de k me funcione, jejeje.

Venga saludos y thanks nuevamente!
  #11 (permalink)  
Antiguo 09/03/2005, 07:09
Avatar de Niconirva  
Fecha de Ingreso: marzo-2005
Mensajes: 119
Antigüedad: 12 años, 9 meses
Puntos: 0
Primero del SQL..

Voy a revisar bien tus códigos (a penas pueda, ahora no tengo tiempo), pero te digo a simple vista cuales son tus errores al crear la bd!, primero, el error que te dice es que para que un campo sea autoincrementable debe ser una llave!, pues si, si tu quieres que el campo sea autoincrementable la variable debe ser tipo bigint, y lo más importante debe ser declarada como primaria (o key) por ejemplo debe ser así (ah!!! y nunca puede tener un valor predeterminado! (o sea nunca puede ser default '1' no!):

CREATE TABLE `visitas` (
`visitas` bigint(20) NOT NULL auto_increment,
PRIMARY KEY (`visitas`)
) TYPE=MyISAM AUTO_INCREMENT=0;

Esta es una sentencia correcta para ejecutar dentro de la SQL que crea que vos querias crear..., el punto es, Esto es lo que precisas?.

Me parece que no!, para que te sirva para tu contador de visitas!, no precisas que sea autoincrementable!, debe ser algo muy simple, una variable sola, NOT NULL y de tipo DOUBLE, eso es lo que vos precisas!, me tengo que ir.., despues sigo un abrazoo,
__________________
"Quien no peca contra la ciencia no descubre nada"
Albert Einstein
  #12 (permalink)  
Antiguo 09/03/2005, 13:18
 
Fecha de Ingreso: febrero-2005
Mensajes: 52
Antigüedad: 12 años, 9 meses
Puntos: 0
Okis pos sigue corrigiendome cuando puedas ;), yo voy arreglandolo

Bueno, muchas gracias por seguir ayudandome y trankilo tu haz cuando puedas o tengas un rato, yo sigo tus instrucciones.

En primer lugar he accedido a la base de datos y tal como me dices la paso a variable double tal como me dices pa el contador. ¿Valdria asi pa el contador?

consulta SQL:
CREATE TABLE `visitas` (
`visita` DOUBLE NOT NULL
);

Los codigos de php y actionscript creo k tan bien pero sino me lo dices o me das una alternativa okis? Suerte de ti k sino andaria mas perdio k un pez sin agua, jeje.

Bueno saludos y te sigo escuchando ;)

Última edición por tonin; 09/03/2005 a las 13:24
  #13 (permalink)  
Antiguo 09/03/2005, 16:04
Avatar de Niconirva  
Fecha de Ingreso: marzo-2005
Mensajes: 119
Antigüedad: 12 años, 9 meses
Puntos: 0
Pues si, me parece que así si deberia andar!, mas tarde miro todo y te digo..., saludos!, y de nada!
__________________
"Quien no peca contra la ciencia no descubre nada"
Albert Einstein
  #14 (permalink)  
Antiguo 09/03/2005, 17:33
Avatar de Niconirva  
Fecha de Ingreso: marzo-2005
Mensajes: 119
Antigüedad: 12 años, 9 meses
Puntos: 0
Los mire detenidamente y estan correctos.., pruebalos nomas y despues me cuentas!, byee!
__________________
"Quien no peca contra la ciencia no descubre nada"
Albert Einstein
  #15 (permalink)  
Antiguo 09/03/2005, 19:19
 
Fecha de Ingreso: febrero-2005
Mensajes: 52
Antigüedad: 12 años, 9 meses
Puntos: 0
Pos ya no se.....

Weno en primer lugar gracias por tener tanta paciencia....

El caso es k no me va, en la web con todos los archivos subidos no me sale nada en el supuesto DinamicText ....

Puedes comprobarlo tu mismo entrando a la web www.pub-elements.com

Alli veras que el contador no da ningun valor de salida...

Se te ocurre algo?

Gracias y un saludo!
  #16 (permalink)  
Antiguo 10/03/2005, 07:59
Avatar de Niconirva  
Fecha de Ingreso: marzo-2005
Mensajes: 119
Antigüedad: 12 años, 9 meses
Puntos: 0
Bueno, aca esta, esto te debería andar!!

Bueno me puse a revisar todo 100% y lo corregi, así ya te lo dejaba andando.
En realidad tenias muchoooos errores en php (no lo vi antes porque no eran sintaxticos sino funcionales) y alguno que otro en ActionScript, así que los corregí.

Primero la bd, ejecuta esta consulta:

CREATE TABLE `visitas` (
`visita` double NOT NULL default '0'
) TYPE=MyISAM;
INSERT INTO `visitas` VALUES ('1');

Luego el php correjido (obviamente debes editar con tus datos las variables:$bd_servidor, $bd_usuario, $bd_contrasenya, $bd_bdname):

Código PHP:
<?php

$bd_servidor 
"localhost";

$bd_usuario "tu_nombre_de_usuario";

$bd_contrasenya "tu_password";

$bd_bdname "tu_tabla";

$link mysql_connect$bd_servidor$bd_usuario$bd_contrasenya);

mysql_select_db($bd_bdname,$link);

$sql "SELECT * FROM `visitas`";

$resultado=mysql_query($sql,$link) or die(mysql_error());

while(
$row mysql_fetch_array($resultado)) {

$numero=$row['visita'];}

echo 
"&visita=$numero&";

$nuevavisita=$numero+1;

$actualiza"UPDATE visitas SET visita='$nuevavisita'";

mysql_query($actualiza,$link);

?>
Guarda el archivo php con nombre "visitas.php"

Y finalmente el ActionScript:

onClipEvent(load) {
consulta = new LoadVars();
consulta.load("visitas.php");
consulta.onLoad = function() {
visitas = consulta.visita;}}

Para tu flash:
Al cuadro de texto dinamico que tenias con nombre de instancia "visitas", debes quitarle ese nombre de instancia, y poner visitas en la denominación de var (variable) de ese cuadro. Además para "ejecutar" el php se lo debe cargar.. por lo tanto las acciones deben estar especificadas entre alguna acción de carga (load), yo eleji onClipEvent, pero esta es una acción de MovieClip (o clip de pelicula), asi que para que te funcione, a tu cuadro de texto dinamico debes convertilo en un clip de pelicula (nombralo como tu quieras), y poner ese codigo ActionScript en las Acciones de ese Clip de pelicula! (esta!!, sino no te va andar!).
Bueno espero que finalmente esta sea la solución, cualquier duda ya sabes ...
__________________
"Quien no peca contra la ciencia no descubre nada"
Albert Einstein

Última edición por Niconirva; 10/03/2005 a las 08:04
  #17 (permalink)  
Antiguo 10/03/2005, 09:54
 
Fecha de Ingreso: febrero-2005
Mensajes: 52
Antigüedad: 12 años, 9 meses
Puntos: 0
Eres un GENIO !!!!

Hola de nuevo, te envio este mensaje para decirte que eres un genio de la programacion y k te estoy muy agradecido por haberme ayudado !!!

Espero algun dia saber tanto como tu y poder ser yo kien t ayude a ti ;)

De nuevo muchas gracias por todo y aki me tienes pa lo k pueda ayudarte, ahora ya me funciona sin ningun problema.

Saludos !!
  #18 (permalink)  
Antiguo 10/03/2005, 10:20
Avatar de Niconirva  
Fecha de Ingreso: marzo-2005
Mensajes: 119
Antigüedad: 12 años, 9 meses
Puntos: 0
Bueno!, muchas gracias a vos!!

Ja!, bueno mejor así, por fin le dimos solución... te digo que estoy muyy lejos de ser un genio de la programación, algo de programación entiendo, pero me falta muchooooo por aprender!.., ta bien, tendre en cuenta que si te preciso te llamo.., vi tu pagina y graficamente me parecio muy atractiva!! (mucho mas que las mias), así que ya se si algun dia necesito que me asesoren graficamente te aviso!... un abrazo!

pd: esta muy bueno el Disk Jockey,.., porque esta en italiano?
__________________
"Quien no peca contra la ciencia no descubre nada"
Albert Einstein
  #19 (permalink)  
Antiguo 10/03/2005, 10:45
 
Fecha de Ingreso: febrero-2005
Mensajes: 52
Antigüedad: 12 años, 9 meses
Puntos: 0
Gracias por el cumplido, jeje

Po zi ! Si t puedo ayudar en algo ya sabes, no es k sea un fiera diseñando pero me he pegao bastantes tortas y claro ....jejeje, k no k es broma, no entiendo mucho pero en fin si te puedo ayudar me lo dices, en cuanto a lo de italiano, no es italiano, es catalan pq se trata de un pub que hay en Tortosa que es un pueblo de Tarragona y sus amos me dijeron k la hiciera en ese idioma. En canvio el servidor kon el k trabajo si k procede de una compañia italiana (igual t suena... www.aruba.it) y si k ofrecia hosting linux lo k pasa es k yo k toy tontito no me di cuenta y solo contrate hosting windows, de ahi todo el mal de cabeza k nos a llevado el contador, jejeje.

Weno de tdas maneras gracias a tu ayuda un problema menos. Muchas gracias y por aki ando siempre aprendiendo ;)

Saludos.
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 01:46.