PHP
PHP
Bueno, que acabo de teminar un cursillo de ASP y tengo intringulis por si alguien puede recomendarme un buen tutorial de php para descargarme, basicamente es para hacer un par de cosillas en mi web y (creo) no voy anecesitar interaccionar con ninguna base de datos, basicamente seran un par de paginas que crearan un par de archivos de texto.
Visita Pequeñas historias, no te arrepentirás, o si, o no, o que se yo.
Ultima actualización 5-8-2011
Ultima actualización 5-8-2011
Bien, parece muy completo, muchas gracias churrumete, dios te lo pague con un par de nicotines
Visita Pequeñas historias, no te arrepentirás, o si, o no, o que se yo.
Ultima actualización 5-8-2011
Ultima actualización 5-8-2011
Uehh, resucito esto pa una cosilla.
En la pagina web que tengo, poco a poco estoy haciendo cosillas en php de produccion propia, para ir aprendiendo a programar en php de la que hago la web, y he decidido mejorar el cutrecontador que tengo, que es este.
Este suma una visita cada vez que se carga la pagina, asi que no es muy fiable que digamos. La cosa, ¿hay alguna forma de mejorarlo para que no sume mas de una visita al dia de una direccion? si usar mysql, simplemente con un archivo de texto plano. Estuve mirando el manual y ya me pierdo.
O sea, basicamente solo pido pa de come, una funcion que me de la ip del visitante, luego ya la tratare yo.
En la pagina web que tengo, poco a poco estoy haciendo cosillas en php de produccion propia, para ir aprendiendo a programar en php de la que hago la web, y he decidido mejorar el cutrecontador que tengo, que es este.
Código: Seleccionar todo
<?
// Archivo en donde se acumulará el numero de visitas
$archivo = "numero.dat";
// Abrimos el archivo para solamente leerlo (r de read)
$abre = fopen($archivo, "r");
// Leemos el contenido del archivo
$total = fread($abre, filesize($archivo));
// Cerramos la conexión al archivo
fclose($abre);
// Abrimos nuevamente el archivo
$abre = fopen($archivo, "w");
// Sumamos 1 nueva visita
$total = $total + 1;
// Y reemplazamos por la nueva cantidad de visitas
$grabar = fwrite($abre, $total);
// Cerramos la conexión al archivo
fclose($abre);
// Imprimimos el total de visitas dándole un formato
echo "<font face='verdana' size='2'>Visitas:".$total."</font>";
?>
Este suma una visita cada vez que se carga la pagina, asi que no es muy fiable que digamos. La cosa, ¿hay alguna forma de mejorarlo para que no sume mas de una visita al dia de una direccion? si usar mysql, simplemente con un archivo de texto plano. Estuve mirando el manual y ya me pierdo.
O sea, basicamente solo pido pa de come, una funcion que me de la ip del visitante, luego ya la tratare yo.
Visita Pequeñas historias, no te arrepentirás, o si, o no, o que se yo.
Ultima actualización 5-8-2011
Ultima actualización 5-8-2011
- Penetreitor
- Mojahedín
- Mensajes: 879
- Registrado: 17 Sep 2003 12:19
rianxeira escribió:Código: Seleccionar todo
// Abrimos el archivo para solamente leerlo (r de read)
$abre = fopen($archivo, "r");
Grandioso
Es que cuando estoy aprendiendo un lenguaje comento hasta las cosas mas obvias XD. tengo mas comentarios que codigo.
Visita Pequeñas historias, no te arrepentirás, o si, o no, o que se yo.
Ultima actualización 5-8-2011
Ultima actualización 5-8-2011
A lo mejor esta te sirve:
Sino puedes tirar de galletitas, porque imagino que si almacenas todas las ips en ficheros tendrás que hacer alguna rutina para purgarlos.
function obtener_ip () {
if(!empty($_SERVER['HTTP_X_FORWARDER_FOR']))
$ip = $_SERVER['HTTP_X_FORWARDER_FOR'];
elseif(!empty($_SERVER['HTTP_VIA']))
$ip = $_SERVER['HTTP_VIA'];
elseif(!empty($_SERVER['REMOTE_ADDR']))
$ip = $_SERVER['REMOTE_ADDR'];
else $ip = 'Desconocido';
return $ip;
}
Sino puedes tirar de galletitas, porque imagino que si almacenas todas las ips en ficheros tendrás que hacer alguna rutina para purgarlos.
Gñ, estoy haciendo el contador y no carrula, a ver si alguien puede ayudarme.
La idea es que cuando alguien llega coge la ip y lo comprueba con una lista que hay en un archivo que cuando se llega a 100 ips se borra, si la ip esta el contador se queda tan pancho, si no esta aumenta en uno y añade la ip a la lista
Pues bien, el bicho siempre suma, y abro el archivo de ips y veo que los añade en una linea, ¿alguien tiene alguna idea?
Código: Seleccionar todo
<?
function obtener_ip () {
if(!empty($_SERVER['HTTP_X_FORWARDER_FOR']))
$ip = $_SERVER['HTTP_X_FORWARDER_FOR'];
elseif(!empty($_SERVER['HTTP_VIA']))
$ip = $_SERVER['HTTP_VIA'];
elseif(!empty($_SERVER['REMOTE_ADDR']))
$ip = $_SERVER['REMOTE_ADDR'];
else $ip = 'Desconocido';
return $ip;
}
function aumentar_contador ($arg1){
// Archivo en donde se acumulará el numero de visitas
$archivo = "numero.dat";
$abre = fopen($archivo, "r");
// Leemos el contenido del archivo
$total = fread($abre, filesize($archivo));
// Cerramos la conexión al archivo
fclose($abre);
// Abrimos nuevamente el archivo
$abre = fopen($archivo, "w");
// Sumamos 1 nueva visita si es necesario
if ($arg1!=0)
$total = $total + $arg1;
// Y reemplazamos por la nueva cantidad de visitas
$grabar = fwrite($abre, $total);
// Cerramos la conexión al archivo
fclose($abre);
return $total;
}
//Obtener ip
$ipVisita=obtener_ip();
//obtenemos la lista de ips del archivo
$archivoip = "ips.dat";
$abreip= fopen($archivoip, "r");
$indice=0;
while (!feof($abreip)) {
fgets($abreip);
$indice++;
}
fclose($abreip);
//si supera x registros lo borramos
if ($indice>100){
$abreip= fopen($archivoip, "w");
fputs($abreip, $ipvisita);
echo "<font face='verdana' size='2'>Visitas:".aumentar_contador(1)."</font>";
}
//si no lo supera seguimos
else{
$esta=0;
$abreip= fopen($archivoip, "r");
for ($i = 0; $i < $indice; $i++){
if (strcasecmp($ipVisita,fgets($abreip))==0)
$esta=1;
}
fclose($abreip);
//si esta registrada la registramos
if (esta==0){
$abreip= fopen($archivoip, "a");
fputs($abreip, $ipVisita);
fclose($abreip);
echo "<font face='verdana' size='2'>Visitasllega3:".aumentar_contador(1)."</font>";
}
else{
echo "<font face='verdana' size='2'>Visitasllega4:".aumentar_contador(0)."</font>";
}
}
?>
La idea es que cuando alguien llega coge la ip y lo comprueba con una lista que hay en un archivo que cuando se llega a 100 ips se borra, si la ip esta el contador se queda tan pancho, si no esta aumenta en uno y añade la ip a la lista
Pues bien, el bicho siempre suma, y abro el archivo de ips y veo que los añade en una linea, ¿alguien tiene alguna idea?
Visita Pequeñas historias, no te arrepentirás, o si, o no, o que se yo.
Ultima actualización 5-8-2011
Ultima actualización 5-8-2011
Nah, ya esta, era algo tan tonto como usar la función chop(), debia pillar algun caracter raro y por eso nunca daban igual.
Visita Pequeñas historias, no te arrepentirás, o si, o no, o que se yo.
Ultima actualización 5-8-2011
Ultima actualización 5-8-2011