Foros del Web » Programando para Internet » PHP »

otro problema mas con contadores

Estas en el tema de otro problema mas con contadores en el foro de PHP en Foros del Web. Se que mucho se ha hablado de este tema, y veo y veo scripts pero no saco conclusion de ninguno de ellos. este es mi ...
  #1 (permalink)  
Antiguo 12/11/2005, 17:30
 
Fecha de Ingreso: abril-2005
Mensajes: 94
Antigüedad: 19 años
Puntos: 0
otro problema mas con contadores

Se que mucho se ha hablado de este tema, y veo y veo scripts pero no saco conclusion de ninguno de ellos.
este es mi contador y es lo que utilizo en mi página principal (index), el contador debe estar en todas mis páginas, para las demas páginas hago un tipo de trampa, pero cuando regreso al menu principal me vuelve a generar un número nuevo, hay alguna manera de que no se incremente cuando regreso a la pagina principal??????
Código PHP:
<?php

  $destino 
"numero.dat";
  
$abrir fopen($destino,"r");
  
$cuenta trim(fread($abrir,filesize($destino)));
  

  if (
$cuenta != ""$cuenta++;
  else 
$cuenta 1;
  @
fclose($abrir);
  
$abrir fopen($destino,"w");
  @
fputs($abrir,$cuenta);



  for(
$i=0;$i<strlen($cuenta);$i++) {
    
$imagen substr($cuenta,$i,1);
    
$contador .= "<img alt='$imagen ' src='$imagen.gif'>";
  }
  @
fclose($abrir);
  print 
$contador;
?>
Esto es lo que hago en las demas páginas, que es no escribir sobre el archivo, pero de ahi selecciono liga a index y me genera nueva cifra..
Código PHP:
<?php

  $destino 
"numero.dat";
  
$abrir fopen($destino,"r");
  
$cuenta trim(fread($abrir,filesize($destino)));
  
     for(
$i=0;$i<strlen($cuenta);$i++) {
    
$imagen substr($cuenta,$i,1);
    
$contador .= "<img alt='$imagen ' src='$imagen.gif'>";
  }
  @
fclose($abrir);
  print 
$contador;
?>

alguna ayuda???

gracias...
  #2 (permalink)  
Antiguo 13/11/2005, 03:29
Avatar de DvD AdN  
Fecha de Ingreso: mayo-2005
Ubicación: Frente al monitor
Mensajes: 610
Antigüedad: 18 años, 11 meses
Puntos: 0
Usa sessiones:

En las paginas has session_start();
En el código has:
if (isset($_SESSION['contador'])) {
//no aumentas el numero del contador
}else{
$_SESSION['contador'] = "algo";
//sumas la visita
}

y ya

__________________
Keep f***ing learning
Ask for f***ing help.
Use f***ing spell check.
Think about all the f***ing possibilities.
  #3 (permalink)  
Antiguo 13/11/2005, 12:15
 
Fecha de Ingreso: abril-2005
Mensajes: 94
Antigüedad: 19 años
Puntos: 0
gracias!!
pero te digo que mi contador es de imagenes no de texto,

y no entedi muy bien lo que me dices!! me podrias explicar??? la verdad no manejo mucho las sesiones y no entendi el codigo. :(
  #4 (permalink)  
Antiguo 15/11/2005, 18:07
Avatar de DvD AdN  
Fecha de Ingreso: mayo-2005
Ubicación: Frente al monitor
Mensajes: 610
Antigüedad: 18 años, 11 meses
Puntos: 0
Ya me había dado cuenta de que usas imagenes y no tiene nada que ver. Porque las imagenes se llaman como los numeros y entonces da lo mismo hacer: echo $imagen;
que:
echo '<img src="'.$imagen.'"/>';

Ahora lo de las sessiones.
Solo tienes que colocar un condicional como te dije

quedaría así

Código PHP:
$destino "numero.dat";
  
$abrir fopen($destino,"r");
  
$cuenta trim(fread($abrir,filesize($destino)));
  

  if (
$cuenta != "") {
    if (!isset(
$_SESSION['contador'])) {//revisas si la variable de session contador no existe
  
$cuenta++;//si no existe, quiere decir que es la primera vez que entran a la página, entonces aumentas el contador de visitas
  
$_SESSION['contador'] = "algo";//creas la variables de session contador para que cuando le de refresh esta ya este seteada y la visita no se cuente
}
  }else{ 
$cuenta 1;}
  @
fclose($abrir);
  
$abrir fopen($destino,"w");
  @
fputs($abrir,$cuenta);



  for(
$i=0;$i<strlen($cuenta);$i++) {
    
$imagen substr($cuenta,$i,1);
    
$contador .= "<img alt='$imagen ' src='$imagen.gif'>";
  }
  @
fclose($abrir);
  print 
$contador
y en las páginas donde uses el contador, en el principio del documento escribe
Código PHP:
<?php
session_start
();
?>
Para iniciar la session y recuperar las variables de session si es que existen
__________________
Keep f***ing learning
Ask for f***ing help.
Use f***ing spell check.
Think about all the f***ing possibilities.
  #5 (permalink)  
Antiguo 15/11/2005, 23:38
 
Fecha de Ingreso: abril-2005
Mensajes: 94
Antigüedad: 19 años
Puntos: 0
El problema que me surge aqui es que exactamente no me altera el numero, pero si me lo pone las veces que le doy reload a la pagina el mismo numero.
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 10:11.