{"id":3198,"date":"2012-07-07T14:57:59","date_gmt":"2012-07-07T14:57:59","guid":{"rendered":"https:\/\/www.jose-aguilar.com\/blog\/?p=3198"},"modified":"2012-08-30T10:39:02","modified_gmt":"2012-08-30T10:39:02","slug":"insertar-un-contador-de-visitas-en-tu-web-con-php","status":"publish","type":"post","link":"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/","title":{"rendered":"Insertar un contador de visitas en tu Web con PHP"},"content":{"rendered":"<p>En este art\u00edculo vamos a ver como a\u00f1adir un contador de visitas con PHP desde 0 con el objetivo de tener un control o contabilizaci\u00f3n de las visitas diarias en tu sitio Web.<\/p>\n<p>El contador de visitas ser\u00e1 transparente al usuario. Se tratar\u00e1 de insertar un c\u00f3digo que nos permitir\u00e1 tener un control de las visitas que recibimos en nuestra Web teniendo en cuenta el d\u00eda y la direcci\u00f3n IP del usuario para evitar duplicaciones en el contador, es decir, que si un usuario entra por primera vez si que se contabilizar\u00e1 pero si entra por segunda o tercera vez el script no har\u00e1 nada.<\/p>\n<p>Necesitaremos a\u00f1adir una nueva tabla en la base de datos para guardar los registros de visitas. La puedes llamar \u00abvisitas\u00bb por ejemplo.<\/p>\n<p><a href=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2012\/07\/VISITAS.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-3199\" title=\"VISITAS\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2012\/07\/VISITAS.png\" alt=\"\" width=\"287\" height=\"108\" \/><\/a>Los campos importantes de esta tabla son la fecha y la IP. En el campo fecha se guardar\u00e1 la fecha actual de la visita y en el campo IP la direcci\u00f3n IP del usuario que nos visita.<\/p>\n<p>Seguidamente deberemos incorporar el c\u00f3digo que realiza la inserci\u00f3n de la visita en la base de datos en nuestro footer o header. Debes insertarlo en un lugar que se visualice en cualquier parte de tu Web, para que se ejecute cada vez que se acceda.<\/p>\n<p>Antes de nada, deber\u00e1s conectar con tu base de datos:<\/p>\n<pre>$con = mysql_connect(\"localhost\", DB_USER, DB_PASSWORD);\r\nmysql_select_db(DB_NAME, $con);<\/pre>\n<p>Seguidamente realizar la consulta e inserci\u00f3n:<\/p>\n<pre>$consulta_visita_real = \"SELECT * FROM visitas WHERE fecha='$hoy' AND ip='\".$_SERVER['REMOTE_ADDR'].\"'\";\r\n$rs_visita_real = mysql_query($consulta_visita_real, $con);\r\nif (mysql_num_rows($rs_visita_real) == 0) {\r\n   $hoy = date(\"Y-m-d\");\r\n\u00a0\u00a0 $insert_real = \"INSERT INTO visitas (ip, fecha, num) VALUES ('\".$_SERVER['REMOTE_ADDR'].\"', '$hoy', 1)\";\r\n\u00a0\u00a0 mysql_query($insert_real, $con);\r\n}<\/pre>\n<p>Como vemos, lo que estamos haciendo es observar si el visitante que est\u00e1 en linea es la primera vez que nos visita hoy, si es as\u00ed a\u00f1adimos un nuevo registro, en caso contrario el script no har\u00e1 nada.<\/p>\n<p>Luego en otro archivo podemos visualizar con una tabla el n\u00famero de visitas que se tienen cada d\u00eda:<\/p>\n<pre>$query = mysql_query(\"SELECT DISTINCT(fecha) FROM visitas ORDER BY fecha DESC\", $con);\r\nif (mysql_num_rows($query) &gt; 0) {\r\n\u00a0\u00a0 \u00a0echo '&lt;table border=\"1\" width=\"250px\" cellpading=\"5px\" cellspacing=\"5px\"&gt;';\r\n\u00a0\u00a0 \u00a0echo '&lt;tr&gt;&lt;td&gt;FECHA&lt;\/td&gt;&lt;td&gt;VISITAS&lt;\/td&gt;&lt;\/tr&gt;';\r\n\u00a0\u00a0 \u00a0while ($row = mysql_fetch_array($query)) {\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0$current_date = $row['fecha'];\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0$query_visitas = mysql_query(\"SELECT COUNT(*) as num FROM `visitas` WHERE fecha = '$current_date'\", $con);\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0$row_visits = mysql_fetch_array($query_visitas);\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0echo '&lt;tr&gt;&lt;td&gt;'.$current_date.'&lt;\/td&gt;&lt;td align=\"right\"&gt;'.$row_visits['num'].'&lt;\/td&gt;&lt;\/tr&gt;';\r\n\u00a0\u00a0 \u00a0}\r\n\u00a0\u00a0 \u00a0echo '&lt;\/table&gt;';\r\n}<\/pre>\n<p>En el c\u00f3digo anterior consultamos a la base de datos el n\u00famero de visitas que se tienen a diario. Veremos algo como lo siguiente:<\/p>\n<p><a href=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2012\/07\/visitas-admin.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-3200\" title=\"visitas admin\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2012\/07\/visitas-admin.png\" alt=\"\" width=\"260\" height=\"101\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>En este art\u00edculo vamos a ver como a\u00f1adir un contador de visitas con PHP desde 0 con el objetivo de tener un control o contabilizaci\u00f3n de las visitas diarias en tu sitio Web. El contador de visitas ser\u00e1 transparente al usuario. Se tratar\u00e1 de insertar un c\u00f3digo que nos permitir\u00e1 tener un control de las [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":3200,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[112],"class_list":["post-3198","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php","tag-registros"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Insertar un contador de visitas en tu Web con PHP - Jose Aguilar Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Insertar un contador de visitas en tu Web con PHP - Jose Aguilar Blog\" \/>\n<meta property=\"og:description\" content=\"En este art\u00edculo vamos a ver como a\u00f1adir un contador de visitas con PHP desde 0 con el objetivo de tener un control o contabilizaci\u00f3n de las visitas diarias en tu sitio Web. El contador de visitas ser\u00e1 transparente al usuario. Se tratar\u00e1 de insertar un c\u00f3digo que nos permitir\u00e1 tener un control de las [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/\" \/>\n<meta property=\"og:site_name\" content=\"Jose Aguilar Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/joseaguilarblog\" \/>\n<meta property=\"article:published_time\" content=\"2012-07-07T14:57:59+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2012-08-30T10:39:02+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2012\/07\/visitas-admin.png\" \/>\n\t<meta property=\"og:image:width\" content=\"260\" \/>\n\t<meta property=\"og:image:height\" content=\"101\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Jose Aguilar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@JoseAguilarBlog\" \/>\n<meta name=\"twitter:site\" content=\"@JoseAguilarBlog\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jose Aguilar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/\",\"name\":\"Insertar un contador de visitas en tu Web con PHP - Jose Aguilar Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2012\/07\/visitas-admin.png\",\"datePublished\":\"2012-07-07T14:57:59+00:00\",\"dateModified\":\"2012-08-30T10:39:02+00:00\",\"author\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/#primaryimage\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2012\/07\/visitas-admin.png\",\"contentUrl\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2012\/07\/visitas-admin.png\",\"width\":260,\"height\":101},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/www.jose-aguilar.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Insertar un contador de visitas en tu Web con PHP\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#website\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/\",\"name\":\"Jose Aguilar Blog\",\"description\":\"Desarrollo Web con PrestaShop, WordPress, PHP, jQuery y Ajax\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.jose-aguilar.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11\",\"name\":\"Jose Aguilar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g\",\"caption\":\"Jose Aguilar\"},\"description\":\"Director ejecutivo y tecnol\u00f3gico en JA Modules. Experto programador PrestaShop y Experto programador WordPress.\",\"sameAs\":[\"https:\/\/plus.google.com\/114357189801512615537\"],\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/author\/josea902\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Insertar un contador de visitas en tu Web con PHP - Jose Aguilar Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"es_ES","og_type":"article","og_title":"Insertar un contador de visitas en tu Web con PHP - Jose Aguilar Blog","og_description":"En este art\u00edculo vamos a ver como a\u00f1adir un contador de visitas con PHP desde 0 con el objetivo de tener un control o contabilizaci\u00f3n de las visitas diarias en tu sitio Web. El contador de visitas ser\u00e1 transparente al usuario. Se tratar\u00e1 de insertar un c\u00f3digo que nos permitir\u00e1 tener un control de las [&hellip;]","og_url":"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/","og_site_name":"Jose Aguilar Blog","article_publisher":"https:\/\/www.facebook.com\/joseaguilarblog","article_published_time":"2012-07-07T14:57:59+00:00","article_modified_time":"2012-08-30T10:39:02+00:00","og_image":[{"width":260,"height":101,"url":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2012\/07\/visitas-admin.png","type":"image\/png"}],"author":"Jose Aguilar","twitter_card":"summary_large_image","twitter_creator":"@JoseAguilarBlog","twitter_site":"@JoseAguilarBlog","twitter_misc":{"Escrito por":"Jose Aguilar","Tiempo de lectura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/","url":"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/","name":"Insertar un contador de visitas en tu Web con PHP - Jose Aguilar Blog","isPartOf":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/#primaryimage"},"image":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/#primaryimage"},"thumbnailUrl":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2012\/07\/visitas-admin.png","datePublished":"2012-07-07T14:57:59+00:00","dateModified":"2012-08-30T10:39:02+00:00","author":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11"},"breadcrumb":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/#primaryimage","url":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2012\/07\/visitas-admin.png","contentUrl":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2012\/07\/visitas-admin.png","width":260,"height":101},{"@type":"BreadcrumbList","@id":"https:\/\/www.jose-aguilar.com\/blog\/insertar-un-contador-de-visitas-en-tu-web-con-php\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/www.jose-aguilar.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Insertar un contador de visitas en tu Web con PHP"}]},{"@type":"WebSite","@id":"https:\/\/www.jose-aguilar.com\/blog\/#website","url":"https:\/\/www.jose-aguilar.com\/blog\/","name":"Jose Aguilar Blog","description":"Desarrollo Web con PrestaShop, WordPress, PHP, jQuery y Ajax","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.jose-aguilar.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11","name":"Jose Aguilar","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g","caption":"Jose Aguilar"},"description":"Director ejecutivo y tecnol\u00f3gico en JA Modules. Experto programador PrestaShop y Experto programador WordPress.","sameAs":["https:\/\/plus.google.com\/114357189801512615537"],"url":"https:\/\/www.jose-aguilar.com\/blog\/author\/josea902\/"}]}},"_links":{"self":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts\/3198","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/comments?post=3198"}],"version-history":[{"count":0,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts\/3198\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/media\/3200"}],"wp:attachment":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/media?parent=3198"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/categories?post=3198"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/tags?post=3198"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}