<?xml version="1.0" encoding="iso-8859-1"?>
<!-- generator="wordpress/1.5.2" -->
<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/"
>

<channel>
	<title>2mdc.com - Downloads</title>
	<link>http://www.2mdc.com/descargas</link>
	<description>Just another WordPress weblog</description>
	<pubDate>Fri, 09 May 2008 10:31:35 +0000</pubDate>
	<generator>http://wordpress.org/?v=1.5.2</generator>
	<language>en</language>

		<item>
		<title>Decodificando desde ASCII, ISO 8859-1 o UTF-8 (Y 2)</title>
		<link>http://www.2mdc.com/descargas/php/decodificando-desde-ascii-iso-8859-1-o-utf-8-y-2</link>
		<comments>http://www.2mdc.com/descargas/php/decodificando-desde-ascii-iso-8859-1-o-utf-8-y-2#comments</comments>
		<pubDate>Fri, 09 May 2008 10:10:53 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>PHP - MySQL</category>
		<guid>http://www.2mdc.com/descargas/php/decodificando-desde-ascii-iso-8859-1-o-utf-8-y-2</guid>
		<description><![CDATA[	Completando la utilidad anterior que os dimos, os proponemos estas dos pequeñas  funciones que también nos ahorrarán mucho tiempo y código  llegado el caso.
	Estas dos funciones hace un fetch (de objetos o arrays) sobre una query anterior, pero además nos cambia la codificación de los textos obtenidos de una sóla vez. Consiguiendo así olvidarnos de escribir en la linea del [...]]]></description>
			<content:encoded><![CDATA[	<p>Completando la utilidad anterior que os dimos, os proponemos estas dos pequeñas  funciones que también nos <strong style="color: rgb(40, 149, 243);">ahorrarán mucho tiempo y código</strong>  llegado el caso.</p>
	<p>Estas dos funciones hace un <strong style="color: rgb(40, 149, 243);">fetch (de objetos o arrays)</strong> sobre una query anterior, pero además nos cambia la codificación de los textos obtenidos de una sóla vez. Consiguiendo así olvidarnos de escribir en la linea del <em>echo</em> un utf8-decode(fila->texto ), htmlenties($fila[&#8217;texto&#8217;]), etc.</p>
	<pre>
# Hace un fetch de query devolviendo el objeto reformateado
#
#
function mysql_fetch_object_dfw($query){
	
   $objeto=mysql_fetch_object($query);
	
   if($objeto){
	
      foreach(get_object_vars($objeto) AS $ind => $val){
	
         $val=($val==NULL)? '': $val;
         $objeto->$ind	=	decode_for_web($val);
	
      }
	
   }
	
   return $objeto;
	
}
	
# Hace un fetch de query devolviendo el array reformateado
#
#
	
function mysql_fetch_array_dfw($query){
	
   $array_o=mysql_fetch_array($query);
	
   if($array_o){
	
      foreach($array_o AS $ind => $val){
         $val=($val==NULL)? '': $val;
         $array_o[$ind]=decode_for_web($val);
      }
	
   }
	
   return $array_o;
	
}
</pre>
]]></content:encoded>
			<wfw:commentRSS>http://www.2mdc.com/descargas/php/decodificando-desde-ascii-iso-8859-1-o-utf-8-y-2/feed/</wfw:commentRSS>
	</item>
		<item>
		<title>Decodificando desde ASCII, ISO 8859-1 o UTF-8</title>
		<link>http://www.2mdc.com/descargas/php/decodificando-desde-ascii-iso-8859-1-o-utf-8</link>
		<comments>http://www.2mdc.com/descargas/php/decodificando-desde-ascii-iso-8859-1-o-utf-8#comments</comments>
		<pubDate>Fri, 09 May 2008 09:45:38 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>PHP - MySQL</category>
		<guid>http://www.2mdc.com/descargas/php/decodificando-desde-ascii-iso-8859-1-o-utf-8</guid>
		<description><![CDATA[	A todo programador PHP le llega el momento de lidiar con la temible codificación de caracteres al crear una web. Cosas llamadas ISO 8859, UTF, Latin1, JIS. etc&#8230;  pueden volverte loco si no se ha tenido en cuenta a la hora de crear las BBDD, incluir script de terceros, wordpress, google maps, etc&#8230;
	Como ayuda [...]]]></description>
			<content:encoded><![CDATA[	<p>A todo programador PHP le llega el momento de lidiar con la temible <strong style="color: rgb(40, 149, 243);">codificación de caracteres</strong> al crear una web. Cosas llamadas ISO 8859, UTF, Latin1, JIS. etc&#8230;  pueden volverte loco si no se ha tenido en cuenta a la hora de crear las BBDD, incluir script de terceros, wordpress, google maps, etc&#8230;</p>
	<p>Como ayuda hemos tratado de crear una <strong style="color: rgb(40, 149, 243);">pequeña función</strong> para ayudarte a despreocuparte de todo.  Ella sólo detecta la codificación del texto pasado y obra en consecuencia, lo cual puede ser muy util si estamos trabajando con caracteres de los que desconocemos su codificación, o peor aún, ¡Tienen codificaciones mezcladas!</p>
	<pre>
&lt;?php
	
# Probamos 3 cadenas de texto con diferentes codificaciones
# la primera con caracteres ASCII (hasta el 128)
# la segunda ISO 8859-1 latin1 (con una e&ntilde;e)
# y la tercera con el caracter copuright en formato utf8
#
	
//Array donde almacenaremos el resultado de la funcion:
$salida	=	array();
$salida[]	=	decode_for_web(&quot;2mdc&quot;);
$salida[]	=	decode_for_web(&quot;dise&ntilde;o&quot;);
$salida[]	=	decode_for_web(&quot;WEB &Acirc;&copy;&quot;);
	
//Pintamos la tabla:
echo '&lt;table border=&quot;1&quot;&gt;';
foreach($salida AS $valor){
	
	echo	'&lt;tr&gt;&lt;td&gt;'.$valor[0].'&lt;/td&gt;';
	echo	'&lt;td&gt;'.$valor[1].'&lt;/td&gt;&lt;/tr&gt;';
	
}
echo '&lt;/table&gt;';
	
# Funcion decodificadora desde ASCII, Latin1 o UTF-8
# Es muy importante conservar el orden del 2do parametro
# en mb_detect_encoding para su correcto funcionamiento.
#
	
function decode_for_web($texto){
	
	$tipo = mb_detect_encoding($texto, &quot;ASCII,UTF-8,
		ISO-8859-1&quot;);
	
	switch($tipo){
	
		case &quot;ASCII&quot;:
	
		break;
		case &quot;UTF-8&quot;:
			$texto	=	utf8_decode($texto);
		break;
		case &quot;ISO-8859-1&quot;:
	
		break;
		default:
	
		break;
	
	}
	
	//array con el texto decodificado y su tipo.
	return array($texto,$tipo);
	
}
	
?&gt;
</pre>
	<p>Como se puede ver utilizamos la nativa <strong style="color: rgb(40, 149, 243);">mb_detect_encoding()</strong> la cual es algo rara a la hora de configurar.<br />
Se puede añadir código en las diferentes casos del <em>switch</em> o al final para por ejemplo convertir a entidades HTML antes retornar.</p>
	<p>El resultado sería éste:</p>
	<table border="1">
<tr>
<td>2mdc</td>
	<td>ASCII</td>
</tr>
	<tr>
<td>diseño</td>
	<td>ISO-8859-1</td>
</tr>
	<tr>
<td>WEB ©</td>
	<td>UTF-8</td>
</tr>
</table>
]]></content:encoded>
			<wfw:commentRSS>http://www.2mdc.com/descargas/php/decodificando-desde-ascii-iso-8859-1-o-utf-8/feed/</wfw:commentRSS>
	</item>
		<item>
		<title>Búsqueda bruta en MySQL</title>
		<link>http://www.2mdc.com/descargas/php/busqueda-bruta-en-mysql</link>
		<comments>http://www.2mdc.com/descargas/php/busqueda-bruta-en-mysql#comments</comments>
		<pubDate>Fri, 04 May 2007 11:23:25 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>PHP - MySQL</category>
		<guid>http://www.2mdc.com/descargas/php/busqueda-bruta-en-mysql</guid>
		<description><![CDATA[	Aunque no debiera ser así, en ocasiones se nos presenta la situación de buscar cierta palabra o cadena de caracteres en una base de datos sin saber siquiera en que columna o tabla se encuentra. Ante esta necesidad nos surgió hacer esta pequeña herramienta de emergencia, con la que podemos buscar cualquier cadena dentro de [...]]]></description>
			<content:encoded><![CDATA[	<p>Aunque no debiera ser así, en ocasiones se nos presenta la situación de buscar cierta palabra o cadena de caracteres en una base de datos sin saber siquiera en que columna o tabla se encuentra. Ante esta necesidad nos surgió hacer esta pequeña herramienta de emergencia, con la que podemos buscar cualquier cadena dentro de cualquier <strong style="color: rgb(40, 149, 243);">base de datos MySQL</strong>, sin la necesidad de crear una <strong style="color: rgb(40, 149, 243);">consulta SQL</strong> con todas las columnas por cada tabla. (Tarea que puede ser desesperante).</p>
	<p>El siguiente código tiene 3 pantallas: </p>
	<p>La primera de acceso a la base de datos en la que introduciremos la <strong style="color: rgb(40, 149, 243);">IP</strong> donde esté escuchando el servidor (o <strong style="color: rgb(40, 149, 243);">localhost</strong> si estamos en una maquina local), el usuario, la contraseña y la base de datos que queremos examinar.</p>
	<p>En la segunda podremos señalar las tablas donde queremos buscar entre todas las que existen e introducir una cadena a buscar.</p>
	<p>Y por fin en la tercera pantalla nos aparecerán los registros que tengan coincidencias resaltando la cadena buscada ordenados por tablas.</p>
	<p>El código está comentado y podreis adaptarlo, modificarlo y mejorarlo todo lo que querais.</p>
	<p><a href="http://www.2mdc.com/descargar/?id=9">Descargar de 2mdc.Com</a></p>
	<p>Entradas relacionadas: <a href="http://www.2mdc.com/descargas/php/de-mysql-a-excel">De MySQL a Excel</a>
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.2mdc.com/descargas/php/busqueda-bruta-en-mysql/feed/</wfw:commentRSS>
	</item>
		<item>
		<title>ScreenClip</title>
		<link>http://www.2mdc.com/descargas/miscelanea/screenclip</link>
		<comments>http://www.2mdc.com/descargas/miscelanea/screenclip#comments</comments>
		<pubDate>Fri, 01 Sep 2006 09:07:53 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Miscelánea</category>
		<guid>http://www.2mdc.com/descargas/miscelanea/screenclip</guid>
		<description><![CDATA[	ScreenClip es una sencilla aplicación para Windows que permite capturar regiones especificas de la pantalla del ordenador y salvarlas directamente como un archivo .jpg en el disco duro.
	Creemos que es una aplicación práctica y sencilla que pasaréis a utilizar con frecuencia una vez que os familiaricéis con ella: aproximadamente 30 segundos después de instalarla  [...]]]></description>
			<content:encoded><![CDATA[	<p>ScreenClip es una sencilla aplicación para Windows que permite capturar regiones especificas de la pantalla del ordenador y salvarlas directamente como un archivo .jpg en el disco duro.</p>
	<p>Creemos que es una aplicación práctica y sencilla que pasaréis a utilizar con frecuencia una vez que os familiaricéis con ella: aproximadamente 30 segundos después de instalarla <img src='http://www.2mdc.com/descargas/wp-images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  , si tuvierais alguna duda sobre su uso o instalación podéis ir a la página de ayuda: <a href="http://www.2mdc.com/multimedia/screenclip.php">Ayuda ScreenClip</a>.</p>
	<p>Podéis descargaros, gratuitamente como siempre, esta aplicación pinchando en  <a href="http://www.2mdc.com/descargar/?id=8">ScreenClip</a>.</p>
	<p>¡¡Esperamos vuestros comentarios para la versión 2.0 !!
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.2mdc.com/descargas/miscelanea/screenclip/feed/</wfw:commentRSS>
	</item>
		<item>
		<title>De MySQL a Excel</title>
		<link>http://www.2mdc.com/descargas/php/de-mysql-a-excel</link>
		<comments>http://www.2mdc.com/descargas/php/de-mysql-a-excel#comments</comments>
		<pubDate>Wed, 15 Feb 2006 13:00:32 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>PHP - MySQL</category>
		<guid>http://www.2mdc.com/descargas/php/de-mysql-a-excel</guid>
		<description><![CDATA[	La verdad es que el título ya lo dice casi todo.
	Desde aquí os podéis descargar una sencilla aplicación que vuelca bases de datos MySQL en archivos Excel.
	La aplicación utiliza la compatibilidad XML de las última versiones de Microsoft Office.
	El volcar la base de datos en un archivo XML compatible Excel permite, por ejemplo:
	
	Guardar diferentes tablas [...]]]></description>
			<content:encoded><![CDATA[	<p>La verdad es que el título ya lo dice casi todo.</p>
	<p>Desde aquí os podéis descargar una sencilla aplicación que vuelca bases de datos MySQL en archivos Excel.</p>
	<p>La aplicación utiliza la compatibilidad XML de las última versiones de Microsoft Office.<a id="more-6"></a></p>
	<p>El volcar la base de datos en un archivo XML compatible Excel permite, por ejemplo:</p>
	<ul>
	<li>Guardar diferentes tablas en diferentes hojas </li>
	<li>Dar formato al archivo Excel resultante mediante hojas de estilo, lo que facilita su legibilidad</li>
	<li>Hacerle la pelota al jefe presentándole los datos en la única aplicación que jamas ha aprendido a utilizar</li>
	</ul>
	<p>El zip de descarga incluye un pequeño archivo de texto con comentarios aclaratorios. Esperamos los vuestros&#8230;</p>
	<p><a href="http://www.2mdc.com/descargar/?id=7">Descargar de 2mdc.Com</a></p>
	<p><strong>NOTA:</strong> No hemos conseguido convencer a Ricardo (el responsable de haber hecho los scripts) de que cambie el diseño de la página de entrada de la aplicación.<br />
<a href="http://www.2mdc.com/">2mdc.com</a> no se hace responsable del mismo <img src='http://www.2mdc.com/descargas/wp-images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
	<p>Entradas relacionadas: <a href="http://www.2mdc.com/descargas/php/busqueda-bruta-en-mysql">Búsqueda bruta en MySQL</a>
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.2mdc.com/descargas/php/de-mysql-a-excel/feed/</wfw:commentRSS>
	</item>
		<item>
		<title>External Javascript</title>
		<link>http://www.2mdc.com/descargas/javascript/external-javascript</link>
		<comments>http://www.2mdc.com/descargas/javascript/external-javascript#comments</comments>
		<pubDate>Tue, 03 Jan 2006 12:26:13 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Javascript</category>
		<guid>http://www.2mdc.com/descargas/javascript/external-javascript</guid>
		<description><![CDATA[	Es archiconocido que se puede llamar a un archivo .js desde una página html mediante la directiva:
	
	Lo que quizá no sea tan del dominio público es que tambien se pueden llamar de la misma manera scripts de PHP, ASP, PERL,&#8230; utilizando el mismo sistema, siempre y cuando, claro está, esos scripts generen javascript válido.
	Además, es [...]]]></description>
			<content:encoded><![CDATA[	<p>Es archiconocido que se puede llamar a un archivo .js desde una página html mediante la directiva:</p>
	<p><code><script type="text/javascript" src="fichero.js"></script></code></p>
	<p>Lo que quizá no sea tan del dominio público es que tambien se pueden llamar de la misma manera scripts de PHP, ASP, PERL,&#8230; utilizando el mismo sistema, siempre y cuando, claro está, esos scripts generen javascript válido.<a id="more-5"></a></p>
	<p>Además, es necesario, que el script informe al navegador de que el documento que va a recibir es javascript. Esto se consigue, por ejemplo, en PHP, incluyendo la línea de código:</p>
	<p><code>Header("content-type: application/x-javascript");</code></p>
	<p>Aunque el código generado por el PHP podría haber sido incluido en el fichero original haciendo que este tuviera, para empezar, la extensión .php, mediante este sistema podemos centralizar toda la ?interacción PHP-javascript? en un script que puede ser llamado desde varias páginas del website.</p>
	<p><a href="http://www.2mdc.com/descargar/?id=6">Descargar de 2mdc.Com</a></p>
	<p>Para que dispongáis de un ejemplo funcional de todo el proceso, hemos empaquetado en un .zip todos los archivos necesarios para que una página web rellene, con este método, las opciones de un desplegable a partir de la información contenida en un documento de texto.</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.2mdc.com/descargas/javascript/external-javascript/feed/</wfw:commentRSS>
	</item>
		<item>
		<title>Resizable Flash Movie</title>
		<link>http://www.2mdc.com/descargas/miscelanea/resizable-flash</link>
		<comments>http://www.2mdc.com/descargas/miscelanea/resizable-flash#comments</comments>
		<pubDate>Mon, 02 Jan 2006 15:34:23 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Miscelánea</category>
		<guid>http://www.2mdc.com/descargas/miscelanea/resizable-flash</guid>
		<description><![CDATA[	Uno de los puntos débiles de Flash es el de no disponer de un &#8220;lienzo&#8221; de tamaño dinámico. 
	Flash permite crear una película en la que el tamaño del área de trabajo está predeterminado y es fijo para toda la película. Es decir, si decidimos hacer una pelicula flash de 800&#215;600 sólo podrá ser de [...]]]></description>
			<content:encoded><![CDATA[	<p>Uno de los puntos débiles de Flash es el de no disponer de un &#8220;lienzo&#8221; de tamaño dinámico. </p>
	<p>Flash permite crear una película en la que el tamaño del área de trabajo está predeterminado y es fijo para toda la película. Es decir, si decidimos hacer una pelicula flash de 800&#215;600 sólo podrá ser de 800&#215;600 (salvo factor de escala) con lo que tendremos problemas si en algún momento del desarrollo el texto crece, queremos acumular más contenido, etc&#8230;<a id="more-4"></a></p>
	<p>Sin embargo, existe un &#8220;truco&#8221; que permite que el tamaño de la película flash crezca (literalmente) a medida que el contenido se expande.</p>
	<p>En el <a href="http://2mdc.com/resizableFlash/">ejemplo</a> se puede ver como el texto HTML inferior y superior es desplazado al &#8220;abrir&#8221; las carpetas de la película de flash.</p>
	<p><a href="http://www.2mdc.com/descargar/?id=5">Descargar de 2mdc.Com</a>
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.2mdc.com/descargas/miscelanea/resizable-flash/feed/</wfw:commentRSS>
	</item>
		<item>
		<title>Modificación de archivos Multiple</title>
		<link>http://www.2mdc.com/descargas/php/modificacion-de-archivos-multiple</link>
		<comments>http://www.2mdc.com/descargas/php/modificacion-de-archivos-multiple#comments</comments>
		<pubDate>Fri, 30 Dec 2005 12:55:38 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>PHP - MySQL</category>
		<guid>http://www.2mdc.com/descargas/php/modificacion-de-archivos-multiple</guid>
		<description><![CDATA[	Descripción:
Ultimamente nos hemos encontrado con la necesidad de agregar los conocidos &#8216;headers y footers&#8217; a nuestras webs, por eso desarrollamos esta mini-aplicación open-source con la que conseguiremos modificar recursivamente todos los archivos de la extensión que queramos que esten en un directorio, agregandoles una cabecera y un pie.
	Descargar de 2mdc.Com
	Como funcionalidad extra también nos brinda [...]]]></description>
			<content:encoded><![CDATA[	<p><strong>Descripción</strong>:<br />
Ultimamente nos hemos encontrado con la necesidad de agregar los conocidos &#8216;headers y footers&#8217; a nuestras webs, por eso desarrollamos esta mini-aplicación open-source con la que conseguiremos modificar recursivamente todos los archivos de la extensión que queramos que esten en un directorio, agregandoles una cabecera y un pie.<a id="more-3"></a></p>
	<p><a href="http://www.2mdc.com/descargar/?id=4">Descargar de 2mdc.Com</a></p>
	<p>Como funcionalidad extra también nos brinda la posibilidad de sustituir una cadena de texto o una expresion regular por la cadena de texto que queramos.</p>
	<p>La aplicacion esta zipeada. Se compone de:</p>
	<ul>
	<li>1html con el formulario donde introducir los parametros</li>
	<li>1php que es el script que procesa los archivos</li>
	<li>1header y 1footer de ejemplo</li>
	</ul>
]]></content:encoded>
			<wfw:commentRSS>http://www.2mdc.com/descargas/php/modificacion-de-archivos-multiple/feed/</wfw:commentRSS>
	</item>
	</channel>
</rss>
