Si vas a copiar

.. y pegar este post en tu web o blog personal, por favor te pido que coloques el link del post de donde lo copiastes:

Fuente:

Listado SQL de paises e imagenes de banderas

24 de agosto de 2007 1 comentario:
NOTA1: aqui tengo una lista de paises que hablan ingles con sus banderas

NOTA2: si buscas el listado de nacionalidades e idiomas de los paises entra aqui alli podras tambien ver las nacionalidades e idiomas en otros idiomas


Ahora les publico algo que muchos necesitamos, los paises para ser guardadas en la base de datos.

Listado sql de paises en español

Listado sql de paises en ingles

* Imagenes de las banderas de los paises

* Esta en formato .txt ya que wordpress no permite subir archivos con extension .rar solo tienes que quitar la extension .txt y agregarle .rar los nombres de las imagenes estan escritas en ingles, tienen el nombre completo: unitedstates.gif

ACTUALIZADO:

Aqui les tengo otra serie de imagenes de banderas pero esta vez estan escritos con el formato ISO3166-1 alpha-2

Banderas de los países

Descargalo aquí cortesía de famfamfam.com


Publicado en tttony.blogspot.com

Saber de donde vienen con php HTTP_REFERER

3 comentarios:
PHP tiene la variable global $_SERVER['HTTP_REFERER'] que te retorna un string de la URL que te envio a la pagina actual.

Aqui les presento un script que diseñe para guardar la pagina y otros datos en un archivo .txt

funciones.php

<?php

/*
HECHO POR tttony 2007
http://tttony.blogspot.com/
*/

function referer() {
// IP del cliente
$remote_ip = (isset($_SERVER['REMOTE_ADDR'])) ? $_SERVER['REMOTE_ADDR'] : "(Sin IP)";
// ISP del cliente
$remote_isp = gethostbyaddr($remote_ip);
// Aqui la pagina que lo refirio
$referer = (isset($_SERVER['HTTP_REFERER'])) ? strtolower($_SERVER['HTTP_REFERER']) : "error";
// No guardar mis propios referers :)
$my_host = strpos($referer, $_SERVER['HTTP_HOST']);

if (($referer != "error") && ($my_host === false)) {
$file = "referer.txt";
$fo = @fopen($file, "rb");
$content = (is_resource($fo)) ? @fread($fo, filesize($file)) : "";
@fclose($fo);

$exist_ip = strpos($content, $remote_ip);
$exist_ref = strpos($content, $referer);
if (($exist_ip === false) || ($exist_ref === false)) {
$str = time() . " " . $remote_ip . "(" . $remote_isp . ") " . $referer . "\n";
$fo = @fopen($file, "ab");
if (is_resource($fo)) @fwrite($fo, $str);
@fclose($fo);
}
}
}

referer();

?>



Como ven la funcion no retorna ningun valor, en el archivo .txt se guarda:

1. Fecha y hora actual
2. IP del cliente (3. ISP del cliente)
4. El referer

--------

Ahora vamos a leer el archivo .txt y lo presentamos en HTML y bien ordenado.

referer.php


<style type="text/css">
<!--
body,td,th {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
}
body {
margin-left: 10px;
margin-top: 10px;
margin-right: 10px;
margin-bottom: 10px;
}
a:link {
color: #000099;
}
a:visited {
color: #990000;
}
a:hover {
color: #FF0000;
}
-->
</style>
<title>Referer</title>
<?php
// RECUERDA COLOCAR BIEN AQUI LA DIRECCION DEL ARCHIVO
$lineas = @file("referer.txt") or die("No existe el archivo");

echo "<h2>Líneas: ".count($lineas)."</h2>\n";
echo '<table border="0" align="center" cellpadding="3" cellspacing="1" bgcolor="#999999">';
echo "<tr bgcolor=#EBEBEB>\n";
echo "<th>Fecha</th>\n";
echo "<th>IP(ISP)</th>\n";
echo "<th>URL</th>\n";
echo "</tr>\n";

$bg_color = "#CCCCCC";
foreach ($lineas as $linea_num => $linea) {
$linea = str_replace("\n", "", $linea);
$arr = explode(" ", $linea);
echo "<tr bgcolor=$bg_color>\n";
echo "<td>".date("d-m-Y, H:i:s", $arr[0])."</td>";
echo "<td>".$arr[1]."</td>";
echo "<td><a target=_blank href=".$arr[2].">".$arr[2]."</a></td>\n";
echo "</tr>\n";
$bg_color = ($bg_color == "#CCCCCC") ? "#EBEBEB" : "#CCCCCC";
}
echo "</table>\n";

?>


Debido a que esto es para que lo lea solo el admin recuerda configurar bien los permisos para que solo tenga acceso el admin.


Publicado en tttony.blogspot.com

Contador de visitas php

No hay comentarios.:
NOTA: no es recomendable usar un archivo de texto para guardar el numero de visitas, es mejor usar una base de datos

Aqui se los tengo es muy simple a facil de usar:

<?php

/* 
   HECHO POR tttony 2007 
   http://tttony.blogspot.com/
*/

function get_counter($file) 
{
    $fo = @fopen($file, "rb");
    $ret = (is_resource($fo)) ? @fread($fo, filesize($file)) : 0;
    @fclose($fo);

    return $ret;
}

function set_counter($file, & $counter
{
    $counter++;
    $fo = @fopen($file, "wb");
    $ret = (is_resource($fo)) ? @fwrite($fo, $counter) : false;
    @fclose($fo);

    return $ret;
}

// Si quieres hacer un contador para cada pagina
// tendrias que cambiar el nombre del archivo
//
$file = "contador.txt";
$hits = get_counter($file);

set_counter($file, $hits);

echo "Esta pagina ha sido vista: <b>$hits</b> veces";

?>



NOTA: me he dado de cuenta de que contador de visitas que guarda el contador en un archivo .txt no es 100% fiable de hecho no lo recomiendo para webs de muchas visitas ya que en un bechmark que realice con un bucle de 2000 repeticiones usando el archivo ab.exe(Apache Benchmark) del servidor Apache

ab -c 4 -n 2000 http://localhost/


El archivo .txt no tenia guardado el numero 2000 que debia tener, esto es debido a que el archivo se abre y se cierra constatemente y por consiguiente no guardara todos los datos, a menos de que se bloquee el archivo .txt cosa que no es recomendable, lo que si recomiendo es que lo guarden en una base de datos, alli no tendran problemas, para estos dias tendre un script para contar visitas y guardarlo en un base de datos

Ultima actualizacion: 10/05/10


Publicado en tttony.blogspot.com

Anti-robot con php

No hay comentarios.:
A muchos de nosotros nos ha pasado que cuando publicamos nuestra pagina y tenemos nuestro contador de visitas personalizado en php(en otro post publicare el script) o contamos algunos clicks en nuestras base de datos, nos topamos que nos visita mucha gente a cada rato.

Pues esto tiene una respuesta o mejor un culpable y ellos son los "ROBOTS" ¿que son los robots?

Bueno pongamos el ejemplo de GOOGLE para que tu pagina aparezca en una busqueda en GOOGLE, GOOGLE debe escanear las paginas para poder guardarlas en la base de datos en el servidor de GOOGLE a eso se le llaman ROBOTS que se la pasan de pagina en pagina revisando los links que tienes en tu pagina y asi sucesivamente.

Hay otras paginas que tambien tiene sus robots unos con malas intenciones por ej. los que andan buscando correos en la web para luego venderlos a SPAMMERS, tambien estan Yahoo, MSN, etc...

Aqui les tengo un script que puede evitar o mas bien avisar si el cliente es o no es un ROBOT.


<?php

/*
* tttony blog
* http://tttony.blogspot.com/
* 2007
*
*/

global $is_bot;

function isbot($agent="") {
// Lista de algunos robots
$bot_array = array("jeevesteoma",
"msnbot",
"slurp",
"jeevestemoa",
"gulper",
"googlebot",
"linkwalker",
"validator",
"webaltbot",
"wget",
"mediapartners");
if ($agent == "") @$agent = $_SERVER["HTTP_USER_AGENT"];
$agent = str_replace("-", " ", $agent);
$agent = strtolower(preg_replace("/[^a-zA-Z _]*/", "", $agent));
return ((bool)count(array_intersect(explode(" ", $agent), $bot_array)));
}
$is_bot = isbot();

?>


La variable $is_bot es global para que puedas usarlo en funciones en caso de que no quieras que ciertos contenidos no se envien al ROBOT por ej. un arhivo o el contador de visitas.


NOTA: hay otra maneras de bloquear robots, mediante Apache por ejemplo, aqui en este caso se muestran una serie de robots mas conocidos pero seguro que hay muuuuchos mas en la red, si quieres combatir el spam te recomiendo que uses reCAPTCHA

Ultima actualizacion: 31/03/09


Publicado en tttony.blogspot.com

Zona horaria con php

1 comentario:
Bueno este es mi primer articulo sobre PHP y comenzare con las fechas que tanto dolor de cabeza nos da a todos.

En este articulo tratare la zona horaria que es algo muy importante a la hora de imprimir una fecha en tu sript por ej. tu servidor tiene la hora adelantada o atrasada hay una funcion en php que nos ayuda a solucionar este problema.

Existen dos funciones:

  1. ini_set() (PHP 4, PHP 5) mas aqui
  2. date_default_timezone_set() (PHP 5 >= 5.1.0RC1) mas aqui

Estas funciones te ayudaran a resolver el problema de la hora en tu pagina web las dos cumplen la misma funcion y no afectan el servidor solo afecta el script el cual se este ejecutando, es decir que es temporal.

ejemplo:


<?php

// Si solo quieres saber la zona horaria actual
// usa la funcion date_default_timezone_get()
// Aqui imprimira por ej: Europe/Madrid
echo date_default_timezone_get();

// Aqui imprime la hora del servidor digamos
// que la zona horaria es "Europe/Madrid" +2 UTC
echo date("d/m/Y, H:i:s", time()); // Imprime: 05/07/2007, 05:03

// Dependiendo de la version de tu php
// Uso esta porque tengo PHP 5 > :)
date_default_timezone_set('America/Caracas');

// Aqui imprimira la hora actual en Caracas Venezuela
// que es(desde diciembre) -4:30 UTC: 04/07/2007, 23:03
echo date("d/m/Y, H:i:s", time());
?>


De esta manera se arregla el problema de la zona horaria en caso de que hagas todo esto y la hora no es la que deseas primero consulta aqui tu zona horaria y si persiste el problema entonces debes contactarte con el Administrador del servidor para que te resuelvan el problema.

Lista de zonas soportadas

Ultima actualizacion: 12/05/10


Publicado en tttony.blogspot.com

Temas para mi Blog

20 de agosto de 2007 No hay comentarios.:
Hola he estado ocupado desde que abandone Wordpress que de hecho mucho tiempo apenas me me registre el 15 de junio del 2007 y durante ese tiempo recibi mas de 3mil visitas y me fue muy bien aunque no hice mucho por alla.

Yo estoy registrado aqui en Blogger desde noviembre del 2006 pero para aquel entonces no sabia mucho de blogs y Blogger no me parecio bueno pero ahora "tratare" de revivirlo.


Los temas que tratare aqui seran los mismos que en Wordpress y con un poco mas de variedad:

1. PHP programacion web
2. Utilidades y tips
3. Y muchas otras cosas como curiosidades, miscelaneas, etc.

saludos y espero sus visitas.

Buscar en el Blog



PUBLICIDAD