<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ISSUX.com &#124; Desarrollo web, frameworks, wordpress, linux y más. &#187; Programacion</title>
	<atom:link href="http://www.issux.com/category/Programacion/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.issux.com</link>
	<description></description>
	<lastBuildDate>Sun, 04 Jul 2010 19:54:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Eclipse: instalar sdk de android</title>
		<link>http://www.issux.com/2010/06/21/eclipse-instalar-sdk-de-android/</link>
		<comments>http://www.issux.com/2010/06/21/eclipse-instalar-sdk-de-android/#comments</comments>
		<pubDate>Mon, 21 Jun 2010 19:07:58 +0000</pubDate>
		<dc:creator>issux</dc:creator>
				<category><![CDATA[Móviles]]></category>
		<category><![CDATA[Programacion]]></category>
		<category><![CDATA[SSOO]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://www.issux.com/?p=517</guid>
		<description><![CDATA[Si queremos desarrollar nuestras aplicaciones android lo primero que tenemos que hacer es instalar el kit de desarrollo (sdk) en un ide, por ejemplo Eclipse Galileo. Una vez tenemos funcionando el Eclipse Galileo, vamos a &#8220;Help&#8220;, &#8220;Install New Software&#8220;: Pulsamos el botón de &#8220;Add&#8220;, y...]]></description>
			<content:encoded><![CDATA[<p>Si queremos desarrollar nuestras aplicaciones android lo primero que tenemos que hacer es instalar el kit de desarrollo (sdk) en un ide, por ejemplo Eclipse Galileo.</p>
<p>Una vez tenemos funcionando el Eclipse Galileo, vamos a &#8220;<strong><em>Help</em></strong>&#8220;, &#8220;<strong><em>Install New Software</em></strong>&#8220;:</p>
<p><a href="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_1.png"><img src="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_1-610x499.png" alt="Eclipse - Instalar nuevo software" title="Eclipse - Instalar nuevo software" width="610" height="499" class="alignnone size-medium wp-image-541" /></a></p>
<p>Pulsamos el botón de &#8220;<strong><em>Add</em></strong>&#8220;, y añadimos el repositorio del plugin de Android:<br />
<code>https://dl-ssl.google.com/android/eclipse/site.xml</code></p>
<p><a href="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_2.png"><img src="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_2.png" alt="Eclipse - Añadir repositorio de software" title="Eclipse - Añadir repositorio de software" width="473" height="157" class="alignnone size-full wp-image-542" /></a></p>
<p>Y esperamos a que se cargue la lista de software disponible. Seleccionamos &#8220;<strong><em>Android DDMS</em></strong>&#8221; y &#8220;<strong><em>Android Development Tools</em></strong>&#8220;, y pulsamos el botón &#8220;<strong><em>Next</em></strong>&#8221;</p>
<p><a href="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_3.png"><img src="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_3-610x484.png" alt="Eclipse - Cargar repositorio de software" title="Eclipse - Cargar repositorio de software" width="610" height="484" class="alignnone size-medium wp-image-543" /></a></p>
<p>pulsamos de nuevo &#8220;<strong><em>Next</em></strong>&#8221;</p>
<p><a href="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_4.png"><img src="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_4-610x484.png" alt="Eclipse - Instalando sdk android" title="Eclipse - Instalando sdk android" width="610" height="484" class="alignnone size-medium wp-image-544" /></a></p>
<p>Confirmamos la instalación de las partes no firmadas:</p>
<p><a href="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_5.png"><img src="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_5.png" alt="Eclipse - Confirmar instalación" title="Eclipse - Confirmar instalación" width="548" height="145" class="alignnone size-full wp-image-545" /></a></p>
<p>aceptamos la licencia de los productos y pulsamos &#8220;Finish&#8221;</p>
<p>Nos pedirá reiniciar el eclipse, le decimos que &#8220;<strong><em>Yes</em></strong>&#8220;. Y ya tenemos el sdk de Android instalado.</p>
<p><a href="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_6.png"><img src="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_6.png" alt="Eclipse - Reiniciar" title="Eclipse - Reiniciar" width="532" height="141" class="alignnone size-full wp-image-546" /></a></p>
<p>Para crear un nuevo proyecto de Android, seleccionamos &#8220;<strong><em>File</em></strong>&#8220;, &#8220;<strong><em>New</em></strong>&#8220;, &#8220;<strong><em>Project</em></strong>&#8220;, &#8220;<strong><em>other</em></strong>&#8220;, &#8220;<strong><em>Android project</em></strong>&#8220;:</p>
<p><a href="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_7.png"><img src="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_7.png" alt="Eclipse - Crear proyecto Android" title="Eclipse - Crear proyecto Android" width="515" height="470" class="alignnone size-full wp-image-547" /></a></p>
<p>A continuación le damos un nombre al proyecto, seleccionamos la versión de Android que deseamos utilizar y el nombre de la aplicación:</p>
<p><a href="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_8.png"><img src="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_8-342x610.png" alt="Eclipse - Seleccionar plataforma Android" title="Eclipse - Seleccionar plataforma Android" width="342" height="610" class="alignnone size-medium wp-image-548" /></a></p>
<p>Una vez seleccionado, pulsamos el botón &#8220;<strong><em>Finish</em></strong>&#8220;:</p>
<p><a href="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_9.png"><img src="http://www.issux.com/wp-content/uploads/2010/06/Eclipse_9-342x610.png" alt="Eclipse - Seleccionar plataforma Android" title="Eclipse - Seleccionar plataforma Android" width="342" height="610" class="alignnone size-medium wp-image-549" /></a></p>
<p>con esto ya tenemos nuestro proyecto Android generado.</p>
<p>A partir de este momento desde Eclipse podemos crear proyectos Android para poder desarrollar nuestras propias aplicaciones. </p>
<p>Es conveniente comprobar de vez en cuando el repositorio de Android para poder descargarse las nuevas versiones del sistema operativo.</p>
<h3  class="related_post_title">Contenidos Relacionados</h3><ul class="related_post"><li><a href="http://www.issux.com/2009/11/07/eclipse-generar-setters-y-getters-automaticamente/" title="Eclipse: generar setters y getters automáticamente">Eclipse: generar setters y getters automáticamente</a></li><li><a href="http://www.issux.com/2009/11/15/eclipse-formatear-codigo/" title="Eclipse: formatear el código">Eclipse: formatear el código</a></li><li><a href="http://www.issux.com/2008/07/08/railsymascom-una-visita-obligada/" title="Railsymas.com: una visita obligada">Railsymas.com: una visita obligada</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.issux.com/2010/06/21/eclipse-instalar-sdk-de-android/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse: formatear el código</title>
		<link>http://www.issux.com/2009/11/15/eclipse-formatear-codigo/</link>
		<comments>http://www.issux.com/2009/11/15/eclipse-formatear-codigo/#comments</comments>
		<pubDate>Sun, 15 Nov 2009 19:50:28 +0000</pubDate>
		<dc:creator>issux</dc:creator>
				<category><![CDATA[Programacion]]></category>
		<category><![CDATA[eclipse]]></category>

		<guid isPermaLink="false">http://www.issux.com/?p=491</guid>
		<description><![CDATA[Una característica de eclipse meramente estética, aunque nos puede resultar muy útil para hacer nuestro código mas sencillo de leer y mantener es la opción de &#8220;formatear código&#8221; automáticamente. Vemos un ejemplo de como funciona: Tenemos nuestro código ya escrito, pero cada función esta tabulada...]]></description>
			<content:encoded><![CDATA[<p>Una característica de eclipse meramente estética, aunque nos puede resultar muy útil para hacer nuestro código mas sencillo de leer y mantener es la opción de &#8220;formatear código&#8221; automáticamente.<br />
<span id="more-491"></span><br />
Vemos un ejemplo de como funciona:</p>
<ul>
<li>Tenemos nuestro código ya escrito, pero cada función esta tabulada a diferente nivel, con lo que se dificulta su lectura. Este ejemplo tiene poco codigo, pero no es lo habitual:
<p><div id="attachment_492" class="wp-caption alignnone" style="width: 310px"><a href="http://www.issux.com/wp-content/uploads/2009/11/Formatear-codigo-java.jpg"><img src="http://www.issux.com/wp-content/uploads/2009/11/Formatear-codigo-java-300x252.jpg" alt="Eclipse - Formatear codigo java. Nuestro código fuente sin ordenar." title="Eclipse - Formatear codigo java" width="300" height="252" class="size-medium wp-image-492" /></a><p class="wp-caption-text">Eclipse - Formatear codigo java. Nuestro código fuente sin ordenar.</p></div></li>
<li>Para &#8220;formatearlo&#8221; y dejarlo mucho mas sencillo de leer, tan solo tenemos que pulsar el &#8220;<strong>botón derecho del ratón</strong>&#8220;, &#8220;<strong>source</strong>&#8220;, &#8220;<strong>format</strong>&#8220;:
<p><div id="attachment_493" class="wp-caption alignnone" style="width: 310px"><a href="http://www.issux.com/wp-content/uploads/2009/11/Formatear-codigo-java-ii.jpg"><img src="http://www.issux.com/wp-content/uploads/2009/11/Formatear-codigo-java-ii-300x251.jpg" alt="Eclipse - Formatear código java. Opción de formatear el código" title="Eclipse - Formatear código java. Opción de formatear el código" width="300" height="251" class="size-medium wp-image-493" /></a><p class="wp-caption-text">Eclipse - Formatear código java. Opción de formatear el código</p></div></li>
<li>Y una vez formateado, comprobamos que todas las funciones esta identadas al mismo nivel y es mucho mas sencillo su lectura:
<p><div id="attachment_494" class="wp-caption alignnone" style="width: 310px"><a href="http://www.issux.com/wp-content/uploads/2009/11/Formatear-codigo-java-iii.jpg"><img src="http://www.issux.com/wp-content/uploads/2009/11/Formatear-codigo-java-iii-300x252.jpg" alt="Eclipse - Formatear código java. Código ya formateado" title="Eclipse - Formatear código java. Código ya formateado" width="300" height="252" class="size-medium wp-image-494" /></a><p class="wp-caption-text">Eclipse - Formatear código java. Código ya formateado</p></div>
</li>
</ul>
<p>Una opción interesante para mantener nuestro código correctamente organizado, facilitando su lectura y su mantenimiento.</p>
<h3  class="related_post_title">Contenidos Relacionados</h3><ul class="related_post"><li><a href="http://www.issux.com/2010/06/21/eclipse-instalar-sdk-de-android/" title="Eclipse: instalar sdk de android">Eclipse: instalar sdk de android</a></li><li><a href="http://www.issux.com/2009/11/07/eclipse-generar-setters-y-getters-automaticamente/" title="Eclipse: generar setters y getters automáticamente">Eclipse: generar setters y getters automáticamente</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.issux.com/2009/11/15/eclipse-formatear-codigo/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Eclipse: generar setters y getters automáticamente</title>
		<link>http://www.issux.com/2009/11/07/eclipse-generar-setters-y-getters-automaticamente/</link>
		<comments>http://www.issux.com/2009/11/07/eclipse-generar-setters-y-getters-automaticamente/#comments</comments>
		<pubDate>Sat, 07 Nov 2009 17:08:18 +0000</pubDate>
		<dc:creator>issux</dc:creator>
				<category><![CDATA[Programacion]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://www.issux.com/?p=480</guid>
		<description><![CDATA[Al igual que ya vimos en un post anterior sobre como generar setters y getters automáticamente en Netbeans, podemos realizar lo mismo con el eclipse. Es muy recomendable para mantener la encapsulación, generar los getters y setters para los atributos de la clase, de esta...]]></description>
			<content:encoded><![CDATA[<p>Al igual que ya vimos en un <a href="http://www.issux.com/2009/08/19/netbeans-generar-setters-y-getters-automaticamente/">post anterior sobre como generar setters y getters automáticamente en Netbeans</a>, podemos realizar lo mismo con el eclipse.<br />
<span id="more-480"></span><br />
Es muy recomendable para mantener la encapsulación, generar los getters y setters para los atributos de la clase, de esta manera, podremos adaptar el formato del atributo, en caso de querer modificarlo (por ejemplo si queremos devolver el nombre de la persona en mayúsculas).</p>
<p>Pero veamos un simple ejemplo:</p>
<ul>
<li><strong>Creamos una nueva</strong> <code>clase Persona</code> <strong>para hacer las pruebas</strong>. En este caso dicha clase se encuentra dentro del <code>paquete clases.pruebas</code>, que hemos creado anteriormente. La <code>clase Persona</code> <strong>contiene el siguiente código</strong>:
<pre class="brush: java;">
package clases.pruebas;

public class Persona {
	/**
	 * Nombre de la persona
	 */
	String nombre;
	/**
	 * Apellidos de la persona
	 */
	String apellidos;
	/**
	 * Dni de la persona
	 */
	Integer dni;
}
</pre>
</li>
<li>Nos colocamos dentro del código de la clase, pulsamos el <strong>botón derecho del ratón</strong>, &#8220;<strong>Source</strong>&#8220;, &#8220;<strong>Generate Getters and Setters</strong>&#8220;.
<div id="attachment_481" class="wp-caption alignnone" style="width: 298px"><a href="http://www.issux.com/wp-content/uploads/2009/11/netbeans-generar-setters-y-getters.jpg"><img src="http://www.issux.com/wp-content/uploads/2009/11/netbeans-generar-setters-y-getters-288x300.jpg" alt="Eclipse - Generar setters y getters" title="Eclipse - Generar setters y getters" width="288" height="300" class="size-medium wp-image-481" /></a><p class="wp-caption-text">Eclipse - Generar setters y getters</p></div>
<p>Seleccionamos los atributos para los que deseamos que genere los setters y getters, o pulsamos el botón de &#8220;<strong>Select All</strong>&#8221; si deseamos que los genere para todos.</p>
<p><div id="attachment_482" class="wp-caption alignnone" style="width: 233px"><a href="http://www.issux.com/wp-content/uploads/2009/11/Pantallazo-Generate-Getters-and-Setters-.png"><img src="http://www.issux.com/wp-content/uploads/2009/11/Pantallazo-Generate-Getters-and-Setters--223x300.png" alt="Eclipse - Generate Getters and Setters" title="Eclipse - Generate Getters and Setters" width="223" height="300" class="size-medium wp-image-482" /></a><p class="wp-caption-text">Eclipse - Generate Getters and Setters</p></div><br />
Una vez pulsado el botón &#8220;ok&#8221;, nuestro código quedara de la siguiente manera:</p>
<pre class="brush: java;">
package clases.pruebas;

public class Persona {
	/**
	 * Nombre de la persona
	 */
	String nombre;
	/**
	 * Apellidos de la persona
	 */
	String apellidos;
	/**
	 * Dni de la persona
	 */
	Integer dni;
	public String getNombre() {
		return nombre;
	}
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
	public String getApellidos() {
		return apellidos;
	}
	public void setApellidos(String apellidos) {
		this.apellidos = apellidos;
	}
	public Integer getDni() {
		return dni;
	}
	public void setDni(Integer dni) {
		this.dni = dni;
	}

}</pre>
</li>
</ul>
<p>A partir de este momento, además de ahorrarnos el trabajo de codificación de las funciones, podemos modificarlas para ajustarlas a nuestra necesidades.</p>
<h3  class="related_post_title">Contenidos Relacionados</h3><ul class="related_post"><li><a href="http://www.issux.com/2010/06/21/eclipse-instalar-sdk-de-android/" title="Eclipse: instalar sdk de android">Eclipse: instalar sdk de android</a></li><li><a href="http://www.issux.com/2009/11/15/eclipse-formatear-codigo/" title="Eclipse: formatear el código">Eclipse: formatear el código</a></li><li><a href="http://www.issux.com/2008/07/08/railsymascom-una-visita-obligada/" title="Railsymas.com: una visita obligada">Railsymas.com: una visita obligada</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.issux.com/2009/11/07/eclipse-generar-setters-y-getters-automaticamente/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Guía gratuita de MySQL: escalamiento y replicación</title>
		<link>http://www.issux.com/2009/10/25/guia-gratuita-de-mysql-escalamiento-y-replicacion/</link>
		<comments>http://www.issux.com/2009/10/25/guia-gratuita-de-mysql-escalamiento-y-replicacion/#comments</comments>
		<pubDate>Sun, 25 Oct 2009 11:19:32 +0000</pubDate>
		<dc:creator>issux</dc:creator>
				<category><![CDATA[Programacion]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://www.issux.com/?p=471</guid>
		<description><![CDATA[Desde Sun Microsystems se nos ofrece de forma gratuita una guía: &#8220;Escalamiento y replicación de MySQL para negocios de alto rendimiento&#8220;. Tal y como describen en la propia pagina: Este documento blueprints en español, comprende las principales maneras en las que instalaciones MySQL pueden ser...]]></description>
			<content:encoded><![CDATA[<p>Desde Sun Microsystems se nos ofrece de forma gratuita una guía: &#8220;<em><a href="https://dct.sun.com/dct/forms/reg_ar_2606_620_0.jsp" rel="nofollow" >Escalamiento y replicación de MySQL para negocios de alto rendimiento</a></em>&#8220;.<br />
<span id="more-471"></span><br />
Tal y como describen en la propia pagina:</p>
<p><em>Este documento blueprints en español, comprende las principales maneras en las que instalaciones MySQL pueden ser escaladas para cumplir con las demandas de los usuarios así como para proveer la flexibilidad y facilidad de uso que las instalaciones individuales ofrecen.</em> </p>
<p>Algunos de los temas que incluye la guía:</p>
<ul>
<li>Introducción al escalamiento</li>
<li>Replicación de la base de datos</li>
<li>Arquitecturas de escalamiento básico</li>
<li>Linux Heartbeat</li>
<li>Monitoreo MySQLy Servicios Profesionales</li>
</ul>
<p>Un interesante guía para conocer un poco mas el funcionamiento de MySQL en grandes aplicaciones.</p>
<h3  class="related_post_title">Contenidos Relacionados</h3><ul class="related_post"><li><a href="http://www.issux.com/2009/10/02/mysql-como-funciona-el-control-de-concurrencia/" title="MySQL: cómo funciona el control de concurrencia">MySQL: cómo funciona el control de concurrencia</a></li><li><a href="http://www.issux.com/2009/10/01/mysql-university/" title="MySQL University">MySQL University</a></li><li><a href="http://www.issux.com/2007/07/14/optimizar-mysql/" title="Optimizar MySQL">Optimizar MySQL</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.issux.com/2009/10/25/guia-gratuita-de-mysql-escalamiento-y-replicacion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Post slug en php</title>
		<link>http://www.issux.com/2009/10/19/post-slug-php/</link>
		<comments>http://www.issux.com/2009/10/19/post-slug-php/#comments</comments>
		<pubDate>Mon, 19 Oct 2009 20:09:43 +0000</pubDate>
		<dc:creator>issux</dc:creator>
				<category><![CDATA[Programacion]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[snippets]]></category>

		<guid isPermaLink="false">http://www.issux.com/?p=463</guid>
		<description><![CDATA[Si utilizamos un cms como wordpress, nos habremos fijado en que cada vez que publicamos un post, y si tenemos correctamente configurados los permalinks, la url del post sera del tipo http://www.midominio.com/titulo-del-post-sin-simbolos-raros. Esto puede ser muy interesante para nuestros proyectos en php, ya que facilita...]]></description>
			<content:encoded><![CDATA[<p>Si utilizamos un cms como wordpress, nos habremos fijado en que cada vez que publicamos un post, y si tenemos correctamente configurados los permalinks, la url del post sera del tipo <code>http://www.midominio.com/titulo-del-post-sin-simbolos-raros</code>.<br />
<span id="more-463"></span><br />
Esto puede ser muy interesante para nuestros proyectos en php, ya que facilita la indexación por parte de los robots de los buscadores. Pero hay un problema si dicho titulo contiene acentos, eñes y demás símbolos que no se llevan demasiado bien con el ingles.</p>
<p>En este caso podemos utilizar la función slugify, que nos permite la conversión sin problemas en nuestros propios proyectos:</p>
<pre class="brush: php;">
function slugify($string, $replacement = '-')
{
  $aux = preg_quote($replacement, '/');

  $map = array(
    '/à|á|ã|â/' =&gt; 'a',
    '/è|é|ê|ẽ|ë/' =&gt; 'e',
    '/ì|í|î/' =&gt; 'i',
    '/ò|ó|ô|õ|ø/' =&gt; 'o',
    '/ù|ú|ũ|û/' =&gt; 'u',
    '/ç/' =&gt; 'c',
    '/ñ/' =&gt; 'n',
    '/ä|æ/' =&gt; 'ae',
    '/ö/' =&gt; 'oe',
    '/ü/' =&gt; 'ue',
    '/Ä/' =&gt; 'Ae',
    '/Ü/' =&gt; 'Ue',
    '/Ö/' =&gt; 'Oe',
    '/ß/' =&gt; 'ss',
    '/[^\w\s]/' =&gt; ' ',
    '/\\s+/' =&gt; $replacement
  );

  return preg_replace(array_keys($map), array_values($map), $string);
}
</pre>
<p>Basado en http://api.cakephp.org/view_source/inflector/#line-480</p>
<h3  class="related_post_title">Contenidos Relacionados</h3><ul class="related_post"><li><a href="http://www.issux.com/2009/10/06/hacer-ping-a-buscadores-en-php/" title="Hacer ping a buscadores en php">Hacer ping a buscadores en php</a></li><li><a href="http://www.issux.com/2009/10/03/obtener-comentarios-de-google-sidewiki-con-php/" title="Obtener comentarios de Google Sidewiki con php">Obtener comentarios de Google Sidewiki con php</a></li><li><a href="http://www.issux.com/2009/09/26/10-trucos-avanzados-de-php/" title="10 Trucos avanzados de PHP">10 Trucos avanzados de PHP</a></li><li><a href="http://www.issux.com/2009/08/13/fecha-dentro-de-x-dias-en-php-ii/" title="Fecha dentro de x dias en php (II)">Fecha dentro de x dias en php (II)</a></li><li><a href="http://www.issux.com/2009/08/08/fecha-dentro-de-x-dias-en-php/" title="Fecha dentro de x días en php">Fecha dentro de x días en php</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.issux.com/2009/10/19/post-slug-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hacer ping a buscadores en php</title>
		<link>http://www.issux.com/2009/10/06/hacer-ping-a-buscadores-en-php/</link>
		<comments>http://www.issux.com/2009/10/06/hacer-ping-a-buscadores-en-php/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 22:06:54 +0000</pubDate>
		<dc:creator>issux</dc:creator>
				<category><![CDATA[Programacion]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[snippets]]></category>

		<guid isPermaLink="false">http://www.issux.com/?p=455</guid>
		<description><![CDATA[Una manera sencilla de facilitar el trabajo de los buscadores, es actualizar el sitemap y realizar un ping cuando actualizamos o modificamos el contenido de nuestra web. En el caso de utilizar wordpress, tenemos plugins específicos que realizan esta función. Pero vamos a ver un...]]></description>
			<content:encoded><![CDATA[<p>Una manera sencilla de facilitar el trabajo de los buscadores, es actualizar el sitemap y realizar un ping cuando actualizamos o modificamos el contenido de nuestra web. En el caso de utilizar wordpress, tenemos plugins específicos que realizan esta función.<br />
<span id="more-455"></span><br />
Pero vamos a ver un sencillo método que podemos incluir en nuestras propias paginas web desarrolladas en php.</p>
<p>El script consta de dos partes: </p>
<p>La primera, es la encargada de generar nuestro fichero sitemap.xml, y se ejecutara cuando modifiquemos el contenido de la web desde el panel de control (por ejemplo, insertamos, editamos o eliminamos una noticia). </p>
<p>La segunda, se encarga de realizar los ping a los buscadores, indicando la ruta del fichero sitemap.xml.</p>
<p><strong>Generación del sitemap.xml</strong></p>
<pre class="brush: php;">
// Cargamos la clase de acceso a la BD
@include_once(&quot;include/MySQL.class.php&quot;);

// Cargamos el ficheros con los datos de configuracion
@include_once(&quot;include/config.inc.php&quot;);

// Creamos objeto Base de datos
$BD= &amp; new MySQL($servidor,$usuario,$pass,$bd);		

$BD-&gt;conectarBD();

// Consulta a la Base de Datos
$res=$BD-&gt;consultaSQL(&quot;SELECT * FROM noticias ORDER BY fecha DESC LIMIT 10&quot;); 

while ($fila=$res-&gt;extraeFila()){
	$noticias[]=$fila;
}

// Instanciamos las etiquetas y valores en una sola variable
$sitemap =&quot;&lt; ?xml version=\&quot;1.0\&quot; encoding=\&quot;UTF-8\&quot;?&gt;\r\n&quot;;
$sitemap .=&quot;&lt;urlset xmlns=\&quot;http://www.google.com/schemas/sitemap/0.84\&quot;&gt;\r\n&quot;;
$sitemap .=&quot;&lt;url&gt;\r\n&quot;;
$sitemap .=&quot;&lt;loc&gt;http://www.midominio.com&lt;/loc&gt;\r\n&quot;;
$sitemap .=&quot;&lt;changefreq&gt;daily&lt;/changefreq&gt;\r\n&quot;;
$sitemap .=&quot;&lt;lastmod&gt;&quot;.$noticias[0]['fecha'].&quot;&lt;/lastmod&gt;\r\n&quot;;
$sitemap .=&quot;&lt;priority&gt;1.0&lt;/priority&gt;\r\n&quot;;
$sitemap .=&quot;&lt;/url&gt;\r\n&quot;;

foreach($noticias as $noticia){
	$sitemap .=&quot;&lt;item&gt;\r\n&quot;;
	$sitemap .=&quot;&lt;url&gt;\r\n&quot;;
	$sitemap .=&quot;&lt;loc&gt;http://www.midominio.com/noticias/&quot;.$noticia['id'].&quot;&lt;/loc&gt;\r\n&quot;;
	$sitemap .=&quot;&lt;lastmod&gt;&quot;.$noticia['fecha'].&quot;&lt;/lastmod&gt;\r\n&quot;;
	$sitemap .=&quot;&lt;priority&gt;0.8&lt;/priority&gt;\r\n&quot;;
	$sitemap .=&quot;&lt;/url&gt;\r\n&quot;;
	$sitemap .=&quot;&lt;/item&gt;\r\n&quot;;
}
$sitemap .=&quot;&lt;/urlset&gt;\r\n&quot;;

//escribimos el archivo sitemap.xml en el directorio raíz
$fichero= fopen(&quot;sitemap.xml&quot; , &quot;w&quot;);

// escribimos la variable creada en el fichero sitemap.xml
fwrite($fichero, $sitemap); 

// cerramos el fichero sitemap.xml
fclose($fichero);

$BD-&gt;cierraBD();
</pre>
<p><strong>Realizar ping a los buscadores</strong><br />
Hacemos una llamada a los servicios de ping de los buscadores, indicándole la ruta del sitemap.xml de nuestro dominio (cambiar <code>http://www.midominio.com/sitemap.xml</code> por nuestra propia ruta). </p>
<pre class="brush: php;">
//Hacemos un ping a las las url de los buscadores para avisar Google, Yahoo y Ask
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://search.yahooapis.com/SiteExplorerService/V1/ping?sitemap=http://www.midominio.com/sitemap.xml');
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.google.com/webmasters/sitemaps/ping?sitemap=http://www.midominio.com/sitemap.xml');
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec();
curl_close($ch); 				

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://submissions.ask.com/ping?sitemap=http%3A//www.midominio.com/sitemap.xml');
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec();
curl_close($ch);
</pre>
<p>Con este código daremos un toque a los principales buscadores, indicándoles que se ha modificado nuestra web, y dandole la ruta del sitemap.xml para facilitarle la indexación de los nuevos contenidos.</p>
<h3  class="related_post_title">Contenidos Relacionados</h3><ul class="related_post"><li><a href="http://www.issux.com/2009/10/19/post-slug-php/" title="Post slug en php">Post slug en php</a></li><li><a href="http://www.issux.com/2009/10/03/obtener-comentarios-de-google-sidewiki-con-php/" title="Obtener comentarios de Google Sidewiki con php">Obtener comentarios de Google Sidewiki con php</a></li><li><a href="http://www.issux.com/2009/09/26/10-trucos-avanzados-de-php/" title="10 Trucos avanzados de PHP">10 Trucos avanzados de PHP</a></li><li><a href="http://www.issux.com/2009/08/13/fecha-dentro-de-x-dias-en-php-ii/" title="Fecha dentro de x dias en php (II)">Fecha dentro de x dias en php (II)</a></li><li><a href="http://www.issux.com/2009/08/08/fecha-dentro-de-x-dias-en-php/" title="Fecha dentro de x días en php">Fecha dentro de x días en php</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.issux.com/2009/10/06/hacer-ping-a-buscadores-en-php/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Obtener comentarios de Google Sidewiki con php</title>
		<link>http://www.issux.com/2009/10/03/obtener-comentarios-de-google-sidewiki-con-php/</link>
		<comments>http://www.issux.com/2009/10/03/obtener-comentarios-de-google-sidewiki-con-php/#comments</comments>
		<pubDate>Sat, 03 Oct 2009 18:48:45 +0000</pubDate>
		<dc:creator>issux</dc:creator>
				<category><![CDATA[Programacion]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[snippets]]></category>

		<guid isPermaLink="false">http://www.issux.com/?p=454</guid>
		<description><![CDATA[En el blog de Jorge Oyhenard podemos consultar un interesante post de como obtener los comentarios sobre nuestra web que realicen los usuarios mediante Google Sidewiki. Google Sidewiki es un sistema presentado recientemente, que permite mediante una aplicación comentar la web. La cuestión es que...]]></description>
			<content:encoded><![CDATA[<p>En el blog de <a href="http://www.jorgeoyhenard.com" rel="nofollow" >Jorge Oyhenard</a> podemos consultar un interesante post de <a href="http://www.jorgeoyhenard.com/obtener-comentarios-de-google-sidewiki-con-php/1685/" rel="nofollow" >como obtener los comentarios sobre nuestra web que realicen los usuarios mediante Google Sidewiki</a>.</p>
<p><a href="http://www.google.com/sidewiki/intl/es/index.html" rel="nofollow" >Google Sidewiki</a> es un sistema presentado recientemente, que permite mediante una aplicación comentar la web. La cuestión es que este sistema de Google es completamente independiente de la web, por lo que perdemos el control sobre dichos comentarios.</p>
<p>Un post muy interesante! </p>
<h3  class="related_post_title">Contenidos Relacionados</h3><ul class="related_post"><li><a href="http://www.issux.com/2009/10/19/post-slug-php/" title="Post slug en php">Post slug en php</a></li><li><a href="http://www.issux.com/2009/10/06/hacer-ping-a-buscadores-en-php/" title="Hacer ping a buscadores en php">Hacer ping a buscadores en php</a></li><li><a href="http://www.issux.com/2009/09/26/10-trucos-avanzados-de-php/" title="10 Trucos avanzados de PHP">10 Trucos avanzados de PHP</a></li><li><a href="http://www.issux.com/2009/08/13/fecha-dentro-de-x-dias-en-php-ii/" title="Fecha dentro de x dias en php (II)">Fecha dentro de x dias en php (II)</a></li><li><a href="http://www.issux.com/2009/08/08/fecha-dentro-de-x-dias-en-php/" title="Fecha dentro de x días en php">Fecha dentro de x días en php</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.issux.com/2009/10/03/obtener-comentarios-de-google-sidewiki-con-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL: cómo funciona el control de concurrencia</title>
		<link>http://www.issux.com/2009/10/02/mysql-como-funciona-el-control-de-concurrencia/</link>
		<comments>http://www.issux.com/2009/10/02/mysql-como-funciona-el-control-de-concurrencia/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 09:29:08 +0000</pubDate>
		<dc:creator>issux</dc:creator>
				<category><![CDATA[Breves]]></category>
		<category><![CDATA[Programacion]]></category>
		<category><![CDATA[innodb]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://www.issux.com/?p=450</guid>
		<description><![CDATA[Una de las mayores ventajas de InnoDB sobre MyISAM es la posibilidad de utilizar transacciones. Con esto evitamos que dos usuarios intenten modificar los mismos datos simultáneamente. Esto no es algo habitual en las paginas web, pero es algo imprescindible en aplicaciones bancarias. Si estas...]]></description>
			<content:encoded><![CDATA[<p>Una de las mayores ventajas de InnoDB sobre MyISAM es la posibilidad de utilizar transacciones. Con esto evitamos que dos usuarios intenten modificar los mismos datos simultáneamente. Esto no es algo habitual en las paginas web, pero es algo imprescindible en aplicaciones bancarias.<br />
<span id="more-450"></span><br />
Si estas <a href="http://forge.mysql.com/wiki/Concurrency_Control:_How_It_Really_Works" rel="nofollow" >interesado en como funcionan las transacciones en MySQL y como las gestiona InnoDB</a>, puedes ver la presentación en <a href="http://forge.mysql.com/wiki/MySQL_University" rel="nofollow" >MySQL University</a></p>
<p>Vía: <a href="http://www.phpfreaks.com" rel="nofollow" >PHP Freaks</a></p>
<h3  class="related_post_title">Contenidos Relacionados</h3><ul class="related_post"><li><a href="http://www.issux.com/2009/10/25/guia-gratuita-de-mysql-escalamiento-y-replicacion/" title="Guía gratuita de MySQL: escalamiento y replicación">Guía gratuita de MySQL: escalamiento y replicación</a></li><li><a href="http://www.issux.com/2009/10/01/mysql-university/" title="MySQL University">MySQL University</a></li><li><a href="http://www.issux.com/2007/07/14/optimizar-mysql/" title="Optimizar MySQL">Optimizar MySQL</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.issux.com/2009/10/02/mysql-como-funciona-el-control-de-concurrencia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL University</title>
		<link>http://www.issux.com/2009/10/01/mysql-university/</link>
		<comments>http://www.issux.com/2009/10/01/mysql-university/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 07:46:54 +0000</pubDate>
		<dc:creator>issux</dc:creator>
				<category><![CDATA[Breves]]></category>
		<category><![CDATA[Programacion]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://www.issux.com/?p=452</guid>
		<description><![CDATA[MySQL University es un programa gratuito para ingenieros/desarrolladores. Las sesiones están abiertas para todo el mundo, son sólo para los empleados de Sun. Las sesiones están programadas los jueves (se puede comprobar el horario local en su web. Para el caso de España, el horario...]]></description>
			<content:encoded><![CDATA[<p>MySQL University es un programa gratuito para ingenieros/desarrolladores. Las sesiones están abiertas para todo el mundo, son sólo para los empleados de Sun.</p>
<ul>
<li>Las sesiones están programadas los jueves (se puede comprobar el horario local en su web. Para el caso de España, el horario varia de las 16h a las 18h). El sistema de conferencia utilizado es <a href="http://www.dimdim.com/" rel="nofollow" >Dimdim</a>, que requiere un navegador con flash, y funciona correctamente en Windows, Mac OS, Linux y Solaris.</li>
<li>Para asistir a la conferencias, acceda con su navegador a <a href="http://webmeeting.dimdim.com/portal/JoinForm.action?confKey=mysqluniversity" rel="nofollow" >esta dirección</a>. La admisión solo se permite 15 minutos antes de la hora de comienzo.</li>
<li>Para cada sesión, hay un wiki individual, que tienen un enlace a la presentación, audios y la transcripción del chat.</li>
</ul>
<p>Enlace recomendable si estamos interesados en el desarrollo con MySQL.</p>
<h3  class="related_post_title">Contenidos Relacionados</h3><ul class="related_post"><li><a href="http://www.issux.com/2009/10/25/guia-gratuita-de-mysql-escalamiento-y-replicacion/" title="Guía gratuita de MySQL: escalamiento y replicación">Guía gratuita de MySQL: escalamiento y replicación</a></li><li><a href="http://www.issux.com/2009/10/02/mysql-como-funciona-el-control-de-concurrencia/" title="MySQL: cómo funciona el control de concurrencia">MySQL: cómo funciona el control de concurrencia</a></li><li><a href="http://www.issux.com/2007/07/14/optimizar-mysql/" title="Optimizar MySQL">Optimizar MySQL</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.issux.com/2009/10/01/mysql-university/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Recopilación de chuletas</title>
		<link>http://www.issux.com/2009/09/29/recopilacion-de-chuletas/</link>
		<comments>http://www.issux.com/2009/09/29/recopilacion-de-chuletas/#comments</comments>
		<pubDate>Tue, 29 Sep 2009 08:52:02 +0000</pubDate>
		<dc:creator>issux</dc:creator>
				<category><![CDATA[Breves]]></category>
		<category><![CDATA[Programacion]]></category>
		<category><![CDATA[chuletas]]></category>

		<guid isPermaLink="false">http://www.issux.com/?p=448</guid>
		<description><![CDATA[Si estamos buscando una chuleta de un lenguaje o de un programa en concreto, podemos buscar en www.cheat-sheets.org, una recopilación de chuletas de multitud de programas y lenguajes. Una pagina muy interesante para tener a mano en nuestro navegador. Contenidos RelacionadosSecurity by Default: buscador de...]]></description>
			<content:encoded><![CDATA[<p>Si estamos buscando una chuleta de un lenguaje o de un programa en concreto, podemos buscar en <a href="http://www.cheat-sheets.org" rel="nofollow" >www.cheat-sheets.org</a>, una <a href="http://www.cheat-sheets.org" rel="nofollow" >recopilación de chuletas de multitud de programas y lenguajes</a>.</p>
<p>Una pagina muy interesante para tener a mano en nuestro navegador.</p>
<h3  class="related_post_title">Contenidos Relacionados</h3><ul class="related_post"><li><a href="http://www.issux.com/2008/11/17/security-default-buscador-de-chuletas/" title="Security by Default: buscador de chuletas">Security by Default: buscador de chuletas</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.issux.com/2009/09/29/recopilacion-de-chuletas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
