<?xml version="1.0" encoding="ISO-8859-1"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
    <channel>
        <title>Cristalab</title>
        <link>http://www.cristalab.com/</link>
        <description>Tutoriales, tips, foros, artículos y ejemplos de diseño y desarrollo web en Cristalab</description>
        
		<language>es-co</language>
		<generator>http://www.cristalab.com/</generator>
        <webMaster>webmaster@cristalab.com</webMaster>
        <atom:link rel="search" href="/opensearch.xml" type="application/opensearchdescription+xml" title="Cristalab" />
	    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.cristalab.com/clab" /><feedburner:info uri="clab" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
    	    <title>Google IO 2013: Nuevo Maps, Google+, Hangouts, Music y más</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/Ga-HLKB4nTg/</link>
			<guid isPermaLink="false">http://www.cristalab.com/blog/google-io-2013-nuevo-maps-google-hangouts-music-y-mas-c110533l/</guid>
	        <description><![CDATA[ Google IO inició en San Francisco este año con un Keynote de tres horas que tras destruirnos moral y fisicamente, nos mostró muchos productos increíbles. Un enfoque en educación, mejoras a Chrome, un sistema de videojuegos para Android, un nuevo entorno de desarrollo llamado Android Studio, entre otros. <br />
<br />
Pero acá re... ]]></description>

	        <dc:creator>Freddie</dc:creator>
	        <category>googleio</category>
	        <category>eventos</category>
	        <category>google</category>
	        <category>googleplus</category>
	        <category>maps</category>
	        
            <content:encoded><![CDATA[  <strong>Google IO</strong> inició en San Francisco este año con un <strong><a class="arti_link" href="http://www.youtube.com/watch?v=VuC0i4xTyrI">Keynote de tres horas</a></strong> que tras destruirnos moral y fisicamente, nos mostró muchos productos increíbles. Un enfoque en educación, mejoras a Chrome, un sistema de videojuegos para Android, un nuevo entorno de desarrollo llamado <a class="arti_link" href="http://techcrunch.com/2013/05/15/google-launches-android-studio-a-development-tool-for-apps/">Android Studio</a>, entre otros. <br /><br />Pero acá resumimos los mejores anuncios del día.<br /><br /><h2>Google Maps</h2><br />Este se llevó todos los premios. Un rediseño total, direcciones que predicen a donde irás y al tiempo te muestra, sobre el mapa, las opciones en auto, transporte público, bicicleta o caminando. <br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/5193d4f4335bb27a20000003_m.jpg" border="0" /></div><br />Google Maps ahora es 100% vectorial y basado en WebGL, por lo que la experiencia es 3D, acelerada y mucho más veloz. Streetview viene integrado en HTML5 y WebGL (cero Flash ahora) y hasta es posible ver panorámicas internas de restaurantes, bares y edificios.<br /><br /><strong>Encima</strong>: Reportes de accidentes como Waze, ofertas como Foursquare y un sistema de &quot;explorar&quot; lo mejor a tu alrededor por ranking y visitantes. Hasta cobertura en *Corea del Norte*.<br /><br /><h2>Google+, Fotos y Hangouts</h2><br />Google+ vive un rediseño total, fuertemente inspirado en Android 4.1, Pinterest y Flipboard. Cada cosa que compartas en Plus será detectado y agrega hashtags automáticamente. Las fotos las super optimiza con increíbles filtros no invasivos (como los de Instagram) e incluso detecta las mejores fotos de un grupo gigante de fotografías publicadas. <br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/5193c9bc26f8cbc913000003_m.jpg" border="0" /></div><br /><strong>Hangouts</strong> también tiene un rediseño total. Parece que reemplazará a Google Talk, centralizando chats, imagenes y llamadas de video. Es básicamente una versión mejorada de Whatsapp combinado con Skype y funciona en Android, iOS y en la web. <br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/5193c83a26f8cbc913000002_m.jpg" border="0" /></div><br /><h2>Google Music</h2><br />Por 10 dólares tienes acceso a tooodaa la música (casi toda). Toda. En streaming o descargandola a tu PC. En móvil, con 3G, en wifi o en un laptop. Además tiene radio, genera playlists y lo normal. Es barato pero por ahora sólo para US. <br /><br /><h2>BONUS: Google Now</h2><br />Google Now, el sistema de predicción y reacción por voz de Android ahora llega al buscador. Entiende tu historial de busqueda, sabe qué quieres. Si vuelas, donde comes, para donde vas, qué necesitas y muestra info en tiempo real o incluso justo antes que la necesites. Es dificil de explicar hasta que lo pruebas, así que ve a Google Now en tu Android, dale al microfono y preguntale &quot;where can I eat pizza?&quot; o &quot;what's the weather in Bogotá&quot;. <br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/5193d80404978f202a000005_m.jpg" border="0" /></div><br />Esto es sólo el día 1. Aun faltan dos días más. Mañana en la tarde, daré una conferencia Ignite desde el IO a las 4pm de San Francisco y desde la mañana estaremos streameando el evento en <a class="arti_link" href="https://mejorando.la/">Mejorando.la</a>. Me pueden seguir en <a class="arti_link" href="https://twitter.com/freddier">@freddier</a><br /><br />Para más datos, sigue a <a class="arti_link" href="https://twitter.com/cristalab">@cristalab</a>, <a class="arti_link" href="https://twitter.com/mejorandola">@mejorandola</a> y fotos desde <strong><a class="arti_link" href="https://plus.google.com/+freddier">Google Glass en +freddier</a></strong>.<br /><br /><div style="text-align:center;"><object width="600" height="365">
	<param name="allowfullscreen" value="true" />
	<param name="allowScriptAccess" value="never" />
	<param name="swliveconnect" value="false" />
	<param name="movie" value="http://www.youtube.com/v/sAfHU5EFX5Q&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" />
	<embed src="http://www.youtube.com/v/sAfHU5EFX5Q&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="never" swliveconnect="false" width="600" height="365"></embed>
</object></div><p><a href="http://www.cristalab.com/blog/google-io-2013-nuevo-maps-google-hangouts-music-y-mas-c110533l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=Ga-HLKB4nTg:sMJfycACfjk:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=Ga-HLKB4nTg:sMJfycACfjk:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/Ga-HLKB4nTg" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Wed, 15 May 2013 14:30:03</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/blog/google-io-2013-nuevo-maps-google-hangouts-music-y-mas-c110533l/</feedburner:origLink></item>
	    <item>
    	    <title>Crea tu propio sidebar personalizado para WordPress</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/4Sq14-ekvy8/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tips/crea-tu-propio-sidebar-personalizado-para-wordpress-c110459l/</guid>
	        <description><![CDATA[ Como crear tu propio sidebar en Wordpress personalizado?. Hace poco me encontré con la necesidad de tener que crear un sidebar personalizado para un cliente, en concreto necesitaba un lugar debajo de un slider donde poder colocar 5 campos personalizados, una forma de hacerlo era simplemente colocando un nuevo div con l... ]]></description>

	        <dc:creator>kodama</dc:creator>
	        <category>wordpress</category>
	        <category>php</category>
	        <category>cms</category>
	        
            <content:encoded><![CDATA[  Como crear tu propio <a class="arti_link" href="http://www.cristalab.com/tags/wordpress/">sidebar en Wordpress personalizado</a>?. Hace poco me encontré con la necesidad de tener que crear un sidebar personalizado para un cliente, en concreto necesitaba un lugar debajo de un slider donde poder colocar 5 campos personalizados, una forma de hacerlo era simplemente colocando un nuevo div con los 5 campos, pero el cliente no iba a tocar el código HTML así que la solución perfecta era configurarle un sidebar desde donde él pudiera modificar, añadir y eliminar campos desde su propio panel de control. Busqué tutoriales sobre el tema, pero ninguno daba con la solución completa, así que me decidí a hacerlo desde cero, aquí os lo dejo paso a paso. Espero que lo disfrutéis!.<br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://l4c.me/uploads/ejemplo-sidebar-personalizado-1368188392_full550.jpg" border="0" /></div><br />Abrimos el archivo “functions.php”, es el lugar donde vamos a definir nuestro sidebar, para ello tenemos que incluir el siguiente código.<br /><br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-php">/** Sidebar personalizada SIDEBAR PERSONALIZADO */
if&#40;function_exists&#40;'register_sidebar'&#41;&#41;&#123;
&nbsp; &nbsp; register_sidebar&#40;array&#40;
&nbsp; &nbsp; &nbsp; &nbsp; 'name' =&gt; 'Detalles_vuelo',
&nbsp; &nbsp; &nbsp; &nbsp; 'before_widget' =&gt; '&lt;div class=&quot;clase_personalizada&quot;&gt;',
&nbsp; &nbsp; &nbsp; &nbsp; 'after_widget' =&gt; '&lt;/div&gt;',
&nbsp; &nbsp; &nbsp; &nbsp; 'before_title' =&gt; '&lt;h7&gt;',
&nbsp; &nbsp; &nbsp; &nbsp; 'after_title' =&gt; '&lt;/h7&gt;',
&nbsp; &nbsp; &#41;&#41;;
&#125;</pre><br /><br />Definimos el campo <strong>name</strong>, con el nombre que le queramos dar a nuestro nuevo sidebar, será el nombre que veremos aparecer junto a nuestros otros sidebar<br /><br />Definimos <strong>before widget</strong>, con la que va a ser el aspecto de nuestro sidebar, en este caso la definimos con una clase personalizada llamada clase_personalizada, en el caso de que queráis utilizar la clase por defecto que viene en vuestro theme tenéis que poner en el campo.<br /><br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-php">&quot;widget %1$s&quot;</pre><br /><br />El campo <strong>after_widget</strong>, se deja tal y como está para dar paso a diferentes widgets que queramos ir añadiendo.<br /><br />El campo <strong>before_title</strong>, es como podéis ver el formato que le queremos dar a nuestro título en el widget y lo mismo con <strong>after_title</strong>.<br /><br />Creamos un nuevo archivo php, en este caso podemos llamarlo <strong>sidebar_personalizado.php</strong>, y tan solo tenemos que colocar este código y guardarlo.<br /><br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-php">&lt;?php if &#40; !function_exists&#40;'dynamic_sidebar'&#41; || !dynamic_sidebar&#40;'Detalles_vuelo'&#41; &#41; &#58; ?&gt; &lt;?php endif; ?&gt;;</pre><br /><br />Creamos nuestra clase personalizada en la hoja de estilos que por defecto utilice nuestro <em>theme</em>, casi siempre es <strong>style.css</strong>, y sobre todo darle el mismo nombre que va el código del paso 1.<br /><br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-html">&lt;div class=&quot;clase_personalizada&quot;&gt;&lt;/div&gt;</pre><br /><br />Aprovechamos también para crear nuestro div personalizado, que es donde irá nuestro sidebar wordpress. Guardamos todo en el servidor y ya lo tenemos casi listo para poder implementar nuestro sidebar wordpress personalizado.<br /><br />Por último buscamos el archivo PHP donde queramos alojar nuestro nuevo sidebar, nuestro nuevo sidebar puede ser horizontal horizontal o vertical, cuando tengamos localizado el lugar colocamos el siguiente código.<br /><br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-html">&lt;div id=&quot;detalles-vuelo&quot;&gt;&lt;?php get_sidebar&#40;'personalizado'&#41; ?&gt;&lt;/div&gt;
</pre><br />El código<strong> get_sidebar</strong> iría dentro de nuestro div personalizado y veréis que “personalizado” es la llamada a nuestro archivo que hemos creado en el paso 2, y que hemos llamado <strong>sidebar_personalizado</strong>. Así queda en el panel de administración:<br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://l4c.me/fullsize/sidebar-1-1368188338.jpg" border="0" /></div><br /><br />Y ya está, a disfrutar experimentando ya que esta forma de personalizar nuestro WordPress nos va a dar un montón de alas para hacer aún más dinámico y personalizable.<p><a href="http://www.cristalab.com/tips/crea-tu-propio-sidebar-personalizado-para-wordpress-c110459l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=4Sq14-ekvy8:p6xNPxNSFHc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=4Sq14-ekvy8:p6xNPxNSFHc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/4Sq14-ekvy8" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Tue, 14 May 2013 15:53:26</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tips/crea-tu-propio-sidebar-personalizado-para-wordpress-c110459l/</feedburner:origLink></item>
	    <item>
    	    <title>Insertar datos a MySQL con jQuery y CodeIgniter</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/FVQly8Uf5Bg/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tips/insertar-datos-a-mysql-con-jquery-y-codeigniter-c110416l/</guid>
	        <description><![CDATA[ El fin de este tutorial es insertar informacion a una base de datos (en este caso MySQL) sin recargar la página usando el framework PHP CodeIgniter y jQuery. <br />
<br />
Código de la tabla:<br />
<br />
CREATE TABLE news (<br />
   id int(11) NOT NULL AUTO_INCREMENT,<br />
   title varchar(128) NOT NULL,<br />
&... ]]></description>

	        <dc:creator>MajinBoo</dc:creator>
	        <category>codeigniter</category>
	        <category>framework</category>
	        <category>php</category>
	        <category>jquery</category>
	        <category>javascript</category>
	        
            <content:encoded><![CDATA[  El fin de este tutorial es insertar informacion a una base de datos (en este caso <strong>MySQL</strong>) sin recargar la página usando el <a class="arti_link" href="http://www.cristalab.com/tags/codeigniter/">framework <strong>PHP CodeIgniter</strong></a> y <a class="arti_link" href="http://www.cristalab.com/tags/jquery/">jQuery</a>. <br /><br />Código de la tabla:<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-sql">
CREATE TABLE news &#40;
&nbsp; &nbsp;id int&#40;11&#41; NOT NULL AUTO_INCREMENT,
&nbsp; &nbsp;title varchar&#40;128&#41; NOT NULL,
&nbsp; &nbsp;slug varchar&#40;128&#41; NOT NULL,
&nbsp; &nbsp;text text NOT NULL,
&nbsp; &nbsp;PRIMARY KEY &#40;id&#41;,
&nbsp; &nbsp;KEY slug &#40;slug&#41;
&#41;;
</pre><br />[nota:ba8b195e3d]No olvides configurar CodeIgniter para trabajar con base de datos.[/nota:ba8b195e3d]<br />En el directorio <strong>views</strong> de CodeIgniter creamos una carpeta llamada <strong>templates</strong> y dentro de ella creamos dos archivos: header.php y footer.php. A header.php todavía no le agregamos código. En footer.php añade lo que quieras!<br /><br />En el directorio <strong>views</strong> de CodeIgniter creamos la carpeta <strong>news</strong> y dentro de ella el archivo create.php que va a contener el formulario.<br /><br />application/views/news/create.php<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-php">
&lt;h2&gt;Create a news item&lt;/h2&gt;

&lt;label for=&quot;title&quot;&gt;Title&lt;/label&gt; 
&lt;input type=&quot;input&quot; name=&quot;title&quot; id=&quot;title&quot; /&gt;&lt;br /&gt;

&lt;label for=&quot;text&quot;&gt;Text&lt;/label&gt;
&lt;textarea name=&quot;text&quot; id=&quot;text&quot;&gt;&lt;/textarea&gt;&lt;br /&gt;

&lt;button id=&quot;add&quot;&gt;Add&lt;/button&gt;

&lt;div id=&quot;mens&quot;&gt;&lt;/div&gt;
</pre><br />[nota:ba8b195e3d]El div con id mens es donde se muestra la respuesta del servidor[/nota:ba8b195e3d].<br /><br />Ahora creamos el controlador, en la carpeta <strong>controllers</strong> creamos el archivo news.php. En él creamos las siguientes funciones:<br /><br /><strong>add</strong>: Muestra al usuario el formulario.<br /><strong>create</strong>: Ejecuta la funcion <strong>set_news()</strong> (aun no creada) que es la que inserta la información a la BD.<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-php">
&lt;?php
class News extends CI_Controller &#123;

&nbsp; &nbsp;public function __construct&#40;&#41;
&nbsp; &nbsp;&#123;
&nbsp; &nbsp;&nbsp; &nbsp;parent&#58;&#58;__construct&#40;&#41;;
&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;load-&gt;model&#40;'news_model'&#41;;
&nbsp; &nbsp;&#125;

&nbsp; &nbsp;public function create&#40;&#41;
&nbsp; &nbsp;&#123;
&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;news_model-&gt;set_news&#40;&#41;;
&nbsp; &nbsp;&nbsp; &nbsp;echo 'insertado correctmanete';
&nbsp; &nbsp;&#125;

&nbsp; &nbsp;public function add&#40;&#41;
&nbsp; &nbsp;&#123;
&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;load-&gt;view&#40;'templates/header'&#41;;&nbsp; &nbsp;
&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;load-&gt;view&#40;'news/create'&#41;;
&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;load-&gt;view&#40;'templates/footer'&#41;;
&nbsp; &nbsp;&#125;
&#125;
</pre><br />Ahora creamos el modelo, en el directorio <strong>models</strong> creamos el archivo news_model.php y la función <strong>set_news()</strong> que escrito anteriormente guarda la información a la base de datos.<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-php">
&lt;?php
class News_model extends CI_Model &#123;

&nbsp; &nbsp;public function __construct&#40;&#41;
&nbsp; &nbsp;&#123;
&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;load-&gt;database&#40;&#41;;
&nbsp; &nbsp;&#125;

&nbsp; &nbsp;public function set_news&#40;&#41;
&nbsp; &nbsp;&#123;

&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;load-&gt;helper&#40;'url'&#41;;
&nbsp; &nbsp;&nbsp; &nbsp;$slug = url_title&#40;$this-&gt;input-&gt;post&#40;'titulo'&#41;, 'dash', TRUE&#41;;
&nbsp; &nbsp;&nbsp; &nbsp;
&nbsp; &nbsp;&nbsp; &nbsp;$data = array&#40;
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;'title' =&gt; $this-&gt;input-&gt;post&#40;'titulo'&#41;,//capturo los datos que me envian desde la vista
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;'slug' =&gt; $slug,
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;'text' =&gt; $this-&gt;input-&gt;post&#40;'texto'&#41;
&nbsp; &nbsp;&nbsp; &nbsp;&#41;;
&nbsp; &nbsp;&nbsp; &nbsp;
&nbsp; &nbsp;&nbsp; &nbsp;return $this-&gt;db-&gt;insert&#40;'news', $data&#41;;
&nbsp; &nbsp;&#125;

&#125;
</pre><br />Ahora agregaremos código a header.php.<br /><br />En el archivo header.php importamos la biblioteca jQuery que en mi caso la tengo en un directorio pero también se puede importar desde el CDN de Google o Microsoft. Este archivo también contiene el código jQuery para que no recargue la página cuando hacemos una inserción.<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-php">
&lt;!doctype html&gt;
&lt;html&gt;
&lt;head&gt;
&nbsp; &nbsp;&lt;title&gt;Tutorial&lt;/title&gt;
&nbsp; &nbsp;&lt;meta charset=&quot;utf-8&quot;&gt;

&nbsp; &nbsp;&lt;script src=&quot;&lt;?php echo base_url&#40;&#41;.'js/jquery-1.9.1.min.js'; ?&gt;&quot;&gt;&lt;/script&gt;

&nbsp; &nbsp;&lt;script&gt;

&nbsp; &nbsp;$&#40;document&#41;.ready&#40;function&#40;&#41;&#123;

&nbsp; &nbsp;&nbsp; $&#40;&quot;#add&quot;&#41;.click&#40;function&#40;&#41;&#123;
&nbsp; &nbsp;&nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;&nbsp; &nbsp; &nbsp;title=$&#40;&quot;#title&quot;&#41;.val&#40;&#41;;
&nbsp; &nbsp;&nbsp; &nbsp; &nbsp;txt=$&#40;&quot;#text&quot;&#41;.val&#40;&#41;;

&nbsp; &nbsp;&nbsp; &nbsp; &nbsp;if&#40;title!=&quot;&quot; &amp;&amp; txt!=&quot;&quot;&#41;&#123;

&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; &nbsp;$.ajax&#40;&#123;url&#58;&quot;&lt;?php echo base_url&#40;&#41;.'index.php/news/create'; ?&gt;&quot;,type&#58;'POST',data&#58;&#123;titulo&#58;title,texto&#58;txt&#125;,success&#58;function&#40;result&#41;&#123;
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; &nbsp; $&#40;&quot;#mens&quot;&#41;.html&#40;result&#41;;

&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; &#125;&#125;&#41;;

&nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&#125;else&#123;

&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$&#40;&quot;#mens&quot;&#41;.html&#40;&quot;No deje campos vacíos&quot;&#41;;

&nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&#125;

&nbsp; &nbsp;&nbsp; &#125;&#41;;

&nbsp; &nbsp;&#125;&#41;;

&nbsp; &nbsp;&lt;/script&gt;

&lt;/head&gt;
&lt;body&gt;

&nbsp; &nbsp;&lt;div id=&quot;cabecera&quot;&gt;
&nbsp; &nbsp;&nbsp; &nbsp;&lt;h1&gt;Insertar datos a MySQL con CodeIgniter y AJAX jQuery&lt;/h1&gt;
&nbsp; &nbsp;&lt;/div&gt;
</pre><br /><br />Cuando se hace click en el botín con id add, capturamos lo que trae las cajas de texto a través de la función val() y la guardamos en las variables title y txt.<br />Si title y txt no están vacías entonces con el método jQuery $.ajax decimos que:<br /><br />A través del método POST le enviamos las variables title y txt a la url que procesa la información, osea:  <strong>base_url().'index.php/news/create'</strong>. Ésta ejecuta el método <strong>create()</strong> del controlador news (archivo news.php) y a la vez el método set_news() del archivo news_model.php, nuestro modelo.<br /><br />Lo que hace la función set_news() es recojer o capturar las variables enviadas desde la vista e insertarlas a la base de datos:<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-php">
&nbsp; &nbsp;&nbsp; &nbsp;$data = array&#40;
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;'title' =&gt; $this-&gt;input-&gt;post&#40;'titulo'&#41;,//capturo los datos que me envian desde la vista
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;'slug' =&gt; $slug,//capturo los datos que me envian desde la vista
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;'text' =&gt; $this-&gt;input-&gt;post&#40;'texto'&#41;//capturo los datos que me envian desde la vista
&nbsp; &nbsp;&nbsp; &nbsp;&#41;;
&nbsp; &nbsp;&nbsp; &nbsp;
&nbsp; &nbsp;&nbsp; &nbsp;return $this-&gt;db-&gt;insert&#40;'news', $data&#41;;//inserta a la base de datos.
</pre><br />Finalmente mostramos el resultado (un mensaje de éxito) en el div con id mens ubicado en el archivo create.php<br /><br /><a class="arti_link" href="http://codigojerry.herobo.com/ci_insertar_jquery/">Demo</a><br /><br /><a class="arti_link" href="https://github.com/jerrycode/ci_insertar_jquery">Descarga desde mi repositorio en github </a>el código completo, mejorado visulmente y con más opciones.<p><a href="http://www.cristalab.com/tips/insertar-datos-a-mysql-con-jquery-y-codeigniter-c110416l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=FVQly8Uf5Bg:Ait1U3jGePA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=FVQly8Uf5Bg:Ait1U3jGePA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/FVQly8Uf5Bg" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Thu, 09 May 2013 12:51:46</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tips/insertar-datos-a-mysql-con-jquery-y-codeigniter-c110416l/</feedburner:origLink></item>
	    <item>
    	    <title>Novedades de Creative Cloud en Adobe MAX 2013</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/CB3nMPeCT8Y/</link>
			<guid isPermaLink="false">http://www.cristalab.com/blog/novedades-de-creative-cloud-en-adobe-max-2013-c110433l/</guid>
	        <description><![CDATA[ Después de poco más de año y medio llego una edición más del Adobe MAX, donde se muestran todos los nuevos features y herramientas para facilitar la tarea de diseñadores y desarrolladores. Esta edición es algo bastante peculiar pues nos trae nostalgia de aquellos grandes días con Flex y Flash a la cabeza de las innovac... ]]></description>

	        <dc:creator>yacaFx</dc:creator>
	        <category>adobe</category>
	        <category>max</category>
	        <category>eventos</category>
	        <category>keynote</category>
	        <category>typekit</category>
	        <category>diseño</category>
	        
            <content:encoded><![CDATA[  Después de poco más de año y medio llego <a class="arti_link" href="http://www.cristalab.com/tags/max/">una edición más del Adobe MAX</a>, donde se muestran todos los nuevos features y herramientas para facilitar la tarea de diseñadores y desarrolladores. Esta edición es algo bastante peculiar pues nos trae nostalgia de aquellos grandes días con Flex y Flash a la cabeza de las innovaciones y ahora, y no por eso menos importante, la llevan, en materia <strong>web</strong>, las herramientas de HTML y de diseño.<br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/518988a4e5324f880b000004_m.jpg" border="0" /></div><br /><br />Las mejoras que han hecho son una gran ayuda en especial para diseñadores y para todos aquellos que están integrándose a un mercado de diseño y desarrollo web. Para los que ya tenemos un rato en este mundo hay herramientas como Edge <strong>Inspect</strong> CC y Edge <strong>Code</strong> CC que realmente <strong>simplifican</strong> mucho de nuestro trabajo diario.<br /><br />La keynote dio inicio con un recuento de la historia de herramientas en la historia de Adobe por parte del CEO Shantanu Narayen mostrando un video interactivo <strong>espectacular</strong> que <a class="arti_link" href="https://twitter.com/adobemax/status/331451220252295168">requirió 40 proyectores sincronizados sobre una pantalla de cerca de mil metros cuadrados a <strong> 0.5 billones de pixeles</strong></a> que pueden ver en el <a class="arti_link" href="http://adobe.ly/13YLXeJ">video onDemand</a>. <br /><br />Como introducción a la <strong>Creative Cloud</strong> dieron el interesante numero de información que generamos al día, algo así como 2.5 <a class="arti_link" href="http://en.wikipedia.org/wiki/Exabyte">exabytes</a> entre tweets, videos, facebook, archivos, mails etc.<br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/518988ebe5324f880b000005_m.jpg" border="0" /></div><br /><br /><h2>Creative Suite es reemplazado por <a class="arti_link" href="http://www.cristalab.com/tags/creative-cloud/">Creative Cloud</a></h2><br />¿Y que creen? ¡Se acabó la serie de CS! ahora las suites y productos serán conocidas como <strong>CC</strong> o lo que es igual la CS7 vio luz pero bajo el nombre de CC (Creative Cloud) y con esto es decirle &quot;hola&quot; a nuevas apps y <a class="arti_link" href="http://www.cristalab.com/blog/adobe-fireworks-muere-alternativas-en-windows-y-mac-c110429l/">&quot;adiós&quot; a otras como Fireworks</a>. <br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/51898932e5324f880b000006_m.jpg" border="0" /></div><br /><br />La puerta se abrió con <strong>Photoshop CC</strong> y <a class="arti_link" href="https://twitter.com/terrylwhite">Terry White</a> quien mostró  features nuevos como Adobe Camera Raw 8 con tres características interesantes: <strong>Advanced Healing brush, Radial Gradient and Upright tool</strong>, este último gustó mucho pero creo que impactó más el filtro <strong>Shake Reduction</strong> que se había mostrado el MAX pasado como una de las cosas en que estaban trabajando.<br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/5189896de5324f880b000007_m.jpg" border="0" /></div><br /><br />Historia aparte <strong>Illustrator CC</strong>, del cual mostraron dos features <strong>Bitmap Brushes y Touch Type Tool,</strong> que a más de un diseñador en el Nokia Theatre L.A. LIVE dejó sin aliento.<br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/51898a09e5324f880b000008_m.jpg" border="0" /></div><br /><br />Por la parte de diseño fue todo, y entró a escena <a class="arti_link" href="https://twitter.com/Beatlejase">Jason Levine</a>, principal evangelista para las herramientas de video y audio de Adobe, dando a conocer la integración de <strong>After Effects CC</strong> con <a class="arti_link" href="http://www.maxon.net/en/home.html">Maxon Cinema 4D</a> <br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/51898b44e5324f880b000009_m.jpg" border="0" /></div><br /><br />Y por fin! lo más esperado para los Dev's en la sala, las herramientas que hay para desarrollo web bajo el brand de &quot;Edge Tools &amp; Services&quot; y presentadas por <a class="arti_link" href="https://twitter.com/veen">Jeffrey Veen</a>, quien fuera fundador de <a class="arti_link" href="https://typekit.com/">Typekit</a>.<br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/51898c40e5324f880b00000a_m.jpg" border="0" /></div><br /><br /><h2>Responsive Design desde Photoshop</h2><br />Entre Assets auto generados, layers y demás nace un feature más que adHoc para Photoshop CC que <strong>permitirá exportar a Web en un archivo manipulable desde Edge Reflow CC llamado &quot;Edge Reflow Request&quot; y así poder generar desde el diseño sitios responsivos.</strong> Habrá que ver cómo se ve el código generado, qué performance presenta y que ojalá y no sufra el mismo destino que <a class="arti_link" href="http://www.adobe.com/products/flashcatalyst.html">Flash Catalyst</a><br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/51898ec9e5324f880b00000b_m.jpg" border="0" /></div><br /><br />Después vinieron unos no tan nuevos como<strong> Edge Inspect CC y Edge Animate CC que no mostraron nada nuevo</strong> a excepción de la integración final con Creative Cloud y su cliente para escritorio en una dinámica llamada &quot;Creative Process&quot; en el cual Jeffrey Veen hizo mancuerna con <a class="arti_link" href="https://twitter.com/scottbelsky">Scott Belsky</a> mostrando como colaborar en un proyecto con assets, configuraciones y demás archivos generados con las herramientas del Creative Cloud.<br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/51898f0fe5324f880b00000c_m.jpg" border="0" /></div><br /><br /><h2>Kuler para mobile, TypeKit y Behance integrada al Creative Cloud</h2><br />La aplicación que impresionó fue <strong>Kuler para mobile</strong>, la cual te permite hacer uso de una cámara y de allí tomar los colores antes de hacer una captura y a partir de esto generar la paleta de colores. El app se ve bastante usable y con una implementación inteligente e integrada a los servicios del Creative Cloud.<br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/51898f48e5324f880b00000d_m.jpg" border="0" /></div><br /><br />Se anunció también que las fuentes de <strong>TypeKit</strong> estarán disponibles para ser instaladas en nuestras desktops al mero estilo de <a class="arti_link" href="http://www.adobe.com/products/fontfolio.html">Font Folio</a>. <br /><br />La plataforma de <a class="arti_link" href="http://www.behance.net">Behance</a> queda también integrada al Creative Cloud, recordemos que es una plataforma que fotógrafos usan para compartir su trabajo y que fue adquirida por Adobe para hacer el CC más &quot;social&quot;.<br /><br /><h2>Lo nuevo de Adobe: Mighty Smart Stylus y Napolean</h2><br />Ya por último dieron a conocer un par de proyectos: <a class="arti_link" href="http://www.theverge.com/2013/5/6/4305712/adobe-announces-first-hardware-the-project-mighty-smart-stylus">&quot;Mighty&quot; y&quot;Napolean&quot;</a>. <strong>Mighty es un &quot;smart stylus&quot;</strong> para poder dibujar en tabletas con varias cualidades como puntos de presión, bluetooth, gruesos de líneas y demás, muy similar a lo que hace una wacom. <br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/51898fa5e5324f880b00000e_m.jpg" border="0" /></div><br /><br /><strong>Napolean </strong>es, en resumen, una regla &quot;inteligente&quot; que complementa a Mighty. Lo interesante de estos dos proyectos es que <strong>son la primer iniciativa en materia de hardware por parte de Adobe.</strong><br /><br />Cerró el día <a class="arti_link" href="https://twitter.com/claudiadraws">Claudia de Almeida</a>, directora de diseño de <a class="arti_link" href="http://www.wired.com">Wired</a>, mostrando al mero estilo de <a class="arti_link" href="http://www.imdb.com/title/tt0181689">Minority Report</a>, <a class="arti_link" href="http://techcrunch.com/2013/05/06/adobes-hardware-experiments-are-more-than-just-hobbies">Project Context</a>, un re-imaginado y re-inventado cuarto editorial entre tabletas y pantallas touch manipulado el trabajo detrás de toda producción editorial.<br /><br /><a class="arti_link" href="http://www.adobe.com/leaders/david-wadhwani.html">David Wadhwani</a>, anunció que todas las nuevas apps del Creative Cloud o el mejor entendido como CS7 verá luz para el usuario final el 17 de Junio.<br /><br />Algo que sí quedó muy claro es que las herramientas mostradas sí facilitan mucho la vida de los diseñadores, y de aquellos enfocados a la parte Web pero de herramientas para dev's como PhoneGap no se habló nada... en fin veamos mañana como va la keynote y qué cosas puedan venir.<br /><br />Mientras tanto, ¿qué es lo que más te ha parecido esta ola de anuncios? ¿Cual es el feature qué mas te ha gustado?<br /><br /><a class="arti_link" href="https://www.facebook.com/media/set/?set=oa.10151433635261720&amp;type=1">Aquí más fotos de la Keynote</a>.<br /><a class="arti_link" href="https://twitter.com/riactive">@riactive</a><p><a href="http://www.cristalab.com/blog/novedades-de-creative-cloud-en-adobe-max-2013-c110433l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=CB3nMPeCT8Y:hGO75mYRrac:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=CB3nMPeCT8Y:hGO75mYRrac:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/CB3nMPeCT8Y" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Tue, 07 May 2013 10:14:46</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/blog/novedades-de-creative-cloud-en-adobe-max-2013-c110433l/</feedburner:origLink></item>
	    <item>
    	    <title>Adobe Fireworks muere: Alternativas en Windows y Mac</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/I_zO5Lqc0kI/</link>
			<guid isPermaLink="false">http://www.cristalab.com/blog/adobe-fireworks-muere-alternativas-en-windows-y-mac-c110429l/</guid>
	        <description><![CDATA[ Adobe mató Fireworks.  <br />
<br />
Adobe abandona Creative Suite y a partir de ahora cesará de vender software en caja por licencia y sólo venderá subscripciones a Creative Cloud. Las apps de Creative Cloud: Photoshop, InDesign, Illustrator, Dreamweaver y "Flash" (que también está en peligro de muerte).<br />
<br />
Aquí algun... ]]></description>

	        <dc:creator>Freddie</dc:creator>
	        <category>fireworks</category>
	        <category>diseño</category>
	        <category>adobe</category>
	        
            <content:encoded><![CDATA[  <a class="arti_link" href="http://blogs.adobe.com/fireworks/2013/05/the-future-of-adobe-fireworks.html">Adobe mató Fireworks.</a>  <br /><br />Adobe abandona Creative Suite y a partir de ahora cesará de vender software en caja por licencia y sólo venderá subscripciones a Creative Cloud. Las apps de Creative Cloud: Photoshop, InDesign, Illustrator, Dreamweaver y &quot;Flash&quot; (que también está en peligro de muerte).<br /><br />Aquí algunas alternativas a Fireworks que pueden servir<br /><br /><h2>Sketch</h2><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/5187fb65640f8f9e2a000004_m.jpg" border="0" /></div><br />Wow, la sorpresa del día. La app #1 que todos me recomiendan. Sketch de Bohemian Coding es hermoso. Vectores, textos, slices, templates, soporte a imagenes de alta resolución y Retina Display. Esto es lo que Fireworks CC debió ser. Incluye exportar para CSS, SVG, canales alpha, y artboards para iOS. <br /><strong><a class="arti_link" href="http://www.bohemiancoding.com/sketch/">Mac, $49, Sketch.</a></strong><br /><br /><h2>Antetype</h2><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/5187fc6e640f8f9e2a000006_o.jpg" border="0" /></div><br />Elimina la parte de edición fotografica y vectorial y repotencia con crack todo el diseño de interfaces y tienes Antetype. Lleno de widgets, extensiones, etc. Es una herramienta que desde un mockup lleva a una interfaz completa en segundos. Funciona para web apps, sitios web, apps de desktop y apps moviles. Exporta CSS, tiene visores multiples para navegadores y plataformas, soporta Responsive Design desde el diseño y es ridiculamente detallado. <br /><strong><a class="arti_link" href="http://antetype.com/">Mac, $189, Anteype.</a></strong><br /><br /><h2>Pixelmator</h2><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/5187fd3b640f8f9e2a000007_m.jpg" border="0" /></div><br />El primero que probé cuando Fireworks no tuvo soporte para Retina Display. Está más enfocado a fotografía y retoque a diseño vectorial, pero funciona bien, soporta Retina de manera hermosa y exporta imagenes normales y de alta densidad de pixeles. La interfaz es bastante pulida. <br /><strong><a class="arti_link" href="http://www.pixelmator.com/">Mac, $14.99, Pixelmator.</a></strong><br /><br /><h2>Webcode</h2><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/5187fbb4640f8f9e2a000005_m.jpg" border="0" /></div><br />Una linda sorpresa que no conocía. Hace animaciones Canvas, CSS, SVG, crea HTML, importa PSD, crea código de generación en tiempo real, exporta a de todo, es en general lindo y muy poderoso. Pero de nuevo, de labor especifica, nada de edición fotografica. Está inspirada en <a class="arti_link" href="http://www.paintcodeapp.com/">PaintCode</a>, que es el &quot;Fireworks&quot; para Objective-C y apps iOS. <br /><strong><a class="arti_link" href="http://www.webcodeapp.com/">Mac, $49.99, Webcode.</a></strong><br /><br /><h2>Paint.net</h2><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/5187fd46640f8f9e2a000008_m.jpg" border="0" /></div><br />¿Y Windows? Pues no hay alternativas, juro que las busqué. Gimp es horrible (I'm so sorry), Inkscape es bugoso y ninguno tiene el manejo vectorial, de bits o de UX de las apps anteriores. El más cercano es Paint.NET. Un proyecto gratis y open source, increiblemente sencillo y práctico que tiene apenas las capacidades necesarias para reemplazar la edición de imagenes en Windows.<br /><br />No es la solución para diseñar interfaces, pero es lo mejor que encontré para reemplazar la edición para la web en Windows. Yo también estoy triste, sí.<br /><br /><strong><a class="arti_link" href="http://www.getpaint.net/">Windows, $0, Paint.NET</a></strong><br /><br /><h2>¿Y no puedo usar una versión vieja de Fireworks y ya?</h2><br />Tengo un Macbook Pro Retina y Fireworks es la única app de Adobe que no funciona bien. Los gráficos se ven rasterizados y editar es imposible con tan baja resolución. Con la llegada de pantallas de alta resolución a más laptops y la ubicuidad de &quot;Retina&quot; y &quot;High DPI&quot; en Android y iOS, Fireworks se ha vuelto, lamentablemente, inusable. <br /><br /><h2>¡Pero Photoshop es mejor que Fireworks/hace lo mismo que Fireworks!</h2><br />Es irónico que las imagenes de este artículo normalmente las habría editado y exportado en Fireworks antes de publicar. Esta vez, por andar en mi desktop, tuve que usar Paint.NET. Sigh...<br /><br />Estamos de luto. Luego charlamos de esto. Hay muchas, muchas razones, pero por ahora, lloremos en paz.<br /><br />Adios Fireworks. Te extrañaremos más de lo que Adobe puede creer.<p><a href="http://www.cristalab.com/blog/adobe-fireworks-muere-alternativas-en-windows-y-mac-c110429l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=I_zO5Lqc0kI:6zvQNQ0JfkE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=I_zO5Lqc0kI:6zvQNQ0JfkE:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/I_zO5Lqc0kI" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Mon, 06 May 2013 14:13:22</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/blog/adobe-fireworks-muere-alternativas-en-windows-y-mac-c110429l/</feedburner:origLink></item>
	    <item>
    	    <title>Animación 2D con jQuery.spritely</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/jH6c3AAtKhg/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tips/animacion-2d-con-jquery.spritely-c110310l/</guid>
	        <description><![CDATA[ Hola, en esta ocasión quiero mostrarles algo muy fácil de hacer y con unos resultados excelentes, es una animación 2D realizada con Javascript, jQuery y jQuery.spritely.<br />

<br />
Conectamos las siguientes librerías al <head>. Puedes descargar aquí la librería jQuery.spritely.<br />
<br />
<script src='http://ajax.go... ]]></description>

	        <dc:creator>gartner90</dc:creator>
	        <category>animacion</category>
	        <category>javascript</category>
	        <category>jquery</category>
	        
            <content:encoded><![CDATA[  Hola, en esta ocasión quiero mostrarles algo muy fácil de hacer y con unos resultados excelentes, es una <a class="arti_link" href="http://www.cristalab.com/tags/jquery/">animación 2D realizada con Javascript, jQuery y jQuery.spritely</a>.<br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/517ec420dd5f02d634000002_o.jpg" border="0" /></div><br /><br /><br />Conectamos las siguientes librerías al &lt;head&gt;. Puedes <a class="arti_link" href="http://www.spritely.net/download/">descargar aquí</a> la librería jQuery.spritely.<br /><br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-html">&lt;script src='http&#58;//ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js' type='text/javascript'&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;http&#58;//cristiangartner.com/jquery.spritely-0.5.js&quot;&gt;&lt;/script&gt;</pre><br /><br />Creamos un script para indicar nuestra animación. #blue es lo que conecta con el div en html.<br /><br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-html">&lt;script type=&quot;text/javascript&quot;&gt;
&nbsp; &nbsp;&nbsp; &nbsp;&#40;function&#40;ablue&#41;&#123;
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$&#40;document&#41;.ready&#40;function&#40;&#41;&#123;
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$&#40;'#blue'&#41;
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;.sprite &#40;&#123;fps&#58;15, no_of_frames&#58;43&#125;&#41;
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&#125;&#41;;
&nbsp; &nbsp;&nbsp; &nbsp;&#125;&#41;&#40;jQuery&#41;;
&nbsp; &nbsp;&lt;/script&gt;
</pre><br /><br />Creamos nuestro div con el ID que se colocó en el JS, en este caso #blue.<br /><br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-html">&lt;div id=&quot;blue&quot;&gt;&lt;/div&gt;</pre><br /><br />Generamos el estilo de ese &lt;div&gt; el cual <strong>tiene una imagen en bucle horizontal que mostrará cada frame.</strong><br /><br />[css:1:700412509d]#blue<br />	&#123;<br />		width&#58; 212px;<br />		height&#58; 148px;<br />		background-image&#58; url&#40;http&#58;//cristiangartner.com/blue.png&#41;;<br />	&#125;[/css:1:700412509d]<br /><br />Y listo...  <img src="/foros/images/smiles/icon_cool.gif" alt=":cool:" border="0" /> <br /><br />Código: <a class="arti_link" href="http://cristiangartner.com">http://cristiangartner.com</a> - <a class="arti_link" href="http://codepen.io/gartner90/pen/zCxGj">http://codepen.io/gartner90/pen/zCxGj</a><br /><br />Para más detalles un videotutorial:<br /> <br /><object width="600" height="365">
	<param name="allowfullscreen" value="true" />
	<param name="allowScriptAccess" value="never" />
	<param name="swliveconnect" value="false" />
	<param name="movie" value="http://www.youtube.com/v/J0AjQZI-w1Q&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" />
	<embed src="http://www.youtube.com/v/J0AjQZI-w1Q&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="never" swliveconnect="false" width="600" height="365"></embed>
</object><p><a href="http://www.cristalab.com/tips/animacion-2d-con-jquery.spritely-c110310l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=jH6c3AAtKhg:Aseq4XKsvUo:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=jH6c3AAtKhg:Aseq4XKsvUo:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/jH6c3AAtKhg" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Mon, 29 Apr 2013 14:07:59</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tips/animacion-2d-con-jquery.spritely-c110310l/</feedburner:origLink></item>
	    <item>
    	    <title>El peligro de seguridad de los callbacks en Socket.io</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/EkRkJuiu8EY/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tips/el-peligro-de-seguridad-de-los-callbacks-en-socket.io-c110325l/</guid>
	        <description><![CDATA[ Socket.IOes un framework entre cliente y servidor . Se usan diferentes metodologías para que el cliente se conecte con el servidor. Entre ellas están: <br />
 flash<br />
 websocket<br />
 jsonrcp<br />
 post<br /><br />
Aunque todas estas son bastante buenas, qué mejor que tenerlas reunidas en una sola. Se usa de una manera simple, con NodeJs e... ]]></description>

	        <dc:creator>alejonext</dc:creator>
	        <category>socket.io</category>
	        <category>Node.js</category>
	        <category>javascript</category>
	        <category>servidores</category>
	        <category>seguridad</category>
	        
            <content:encoded><![CDATA[  <a class="arti_link" href="http://www.cristalab.com/tags/socket.io/">Socket.IOes un framework entre cliente y servidor</a> . Se usan diferentes metodologías para que el cliente se conecte con el servidor. Entre ellas están: <br /><ul><li> flash<br /></li><li> websocket<br /></li><li> jsonrcp<br /></li><li> post<br /></li></ul><br /><br />Aunque todas estas son bastante buenas, qué mejor que tenerlas reunidas en una sola. Se usa de una manera simple, con <a class="arti_link" href="http://www.nodejs.org">NodeJs</a> e iniciando un simple archivo escrito en JS. Para ver como cómo funciona se los mostraré.<br /><br />En Servidor:<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-js">
var io = require&#40;'socket.io'&#41;.listen&#40;80&#41;;
io.sockets.on&#40;'connection', function &#40;socket&#41; &#123; 
&nbsp; //Cuando se conecte el Cliente
&nbsp; socket.emit&#40;'news', &#123; hello&#58; 'world' &#125;&#41;; 
&nbsp; // Envie un evento con X o Y variable
&nbsp; socket.on&#40;'my other event', function &#40;data&#41; &#123; 
&nbsp; &nbsp;// Regresa un evento con X o Y variable
&nbsp; &nbsp; console.log&#40;data&#41;;
&nbsp; &#125;&#41;;
&#125;&#41;
</pre><br />Y en cliente:<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-html">
&lt;script src=&quot;/socket.io/socket.io.js&quot;&gt;&lt;/script&gt;
&lt;script&gt;
&nbsp; var socket = io.connect&#40;'http&#58;//localhost'&#41;; 
&nbsp; //Se conecta
&nbsp; socket.on&#40;'news', function &#40;data&#41; &#123; 
&nbsp; &nbsp;// Cuando el servidor envie X evento con Y variable
&nbsp; &nbsp; console.log&#40;data&#41;;
&nbsp; &nbsp; socket.emit&#40;'my other event', &#123; my&#58; 'data' &#125;&#41;; 
&nbsp; &nbsp;// Emita X en otro evento
&nbsp; &#125;&#41;;
&lt;/script&gt;
</pre><br /><br />Es básicamente como una conversación.<br /><br /><h2>Callbacks</h2><br />En teoría es un retorno de un llamado, en este caso es un retorno de X o Y función. Un ejemplo en JS sería:<br /><br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-js">
function MiPrimerCallback&#40; x, y &#41;&#123;
&nbsp; console.log&#40;x&#41;;
&nbsp; x += &quot; Ya estamos en el callback&quot;;
&nbsp; return y&#40;x&#41;;
&nbsp; // No existe necesidad de colocar &quot;return&quot;
&#125;
MiPrimerCallback&#40; &quot;Hola Mundo&quot;, function&#40;x&#41;&#123;
&nbsp; console.log&#40;x&#41;;
&#125; &#41;
</pre><br />Nos saldría algo así<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint">
&quot;Hola mundo&quot;
&quot;Hola mundo Ya estamos en el callback&quot;

</pre>
<br /><br />Esto sirve para generar una sincronía en las funciones de JS, en este caso. Lo que pasa con JS es que NodeJS va lanzado una serie de funciones sin importar si ha o no ha terminado. Eso puede ser difícil de manejar si no sabemos cómo construir Callbacks. <br /><br /><h2>Cómo utilizar Callbacks en SocketIO</h2><br />SocketIO está escrito en JS, y por su misma metodología se pueden enviar callbacks, variables y/o funciones. Sería algo así:<br /><br />En el servidor:<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-js">
var io = require&#40;'socket.io'&#41;.listen&#40;80&#41;;
io.sockets.on&#40;'connection', function &#40;socket&#41; &#123; 
&nbsp; socket.emit&#40;'news', &#123; hello&#58; 'world' &#125;&#41;; 
&nbsp; socket.on&#40;'my other event', function &#40;data, callback&#41; &#123; 
&nbsp; &nbsp; console.log&#40;data&#41;;
&nbsp; &nbsp; return callback&#40;&quot;Hola, mundo&quot;&#41;; 
&nbsp; &nbsp; // Devolviendo la llamada con un String
&nbsp; &#125;&#41;;
&#125;&#41;
</pre><br />En el Cliente:<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-html">
&lt;script src=&quot;/socket.io/socket.io.js&quot;&gt;&lt;/script&gt;
&lt;script&gt;
&nbsp; var socket = io.connect&#40;'http&#58;//localhost'&#41;;
&nbsp; socket.on&#40;'news', function &#40;data&#41; &#123; 
&nbsp; &nbsp; console.log&#40;data&#41;;
&nbsp; &nbsp; socket.emit&#40;'my other event', &#123; my&#58; 'data' &#125;, function&#40;data&#41;&#123; 
&nbsp; &nbsp; &nbsp; // Regresa la funcion
&nbsp; &nbsp; &nbsp; &nbsp;console.log&#40; data &#41;; 
&nbsp; &nbsp; &nbsp;// Nos saldra en la consola de nuestro navegador &quot;Hola Mundo&quot;
&nbsp; &nbsp; &#125;&#41;; 
&nbsp; &#125;&#41;;
&lt;/script&gt;
</pre><br />Así podemos hacer que haga determinadas funciones el servidor y no el cliente. Y podemos generar &quot;conversación&quot;, entre servidor-cliente.<br /><br /><h2>Por qué puede ser peligroso?</h2><br />Bueno... Aquí viene la parte dura! Voy a responder esa pregunta con un ejemplo. Para que todos entendamos que puede pasar. <img src="/foros/images/smiles/icon_happy.gif" alt=":)" border="0" /><br />Generamos un servidor<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-js">
var io = require&#40;'socket.io'&#41;.listen&#40;80&#41;;
io.sockets.on&#40;'connection', function &#40;socket&#41; &#123; 
&nbsp; socket.emit&#40;'news', &#123; hello&#58; 'world' &#125;&#41;; 
&nbsp; socket.on&#40;'my other event', function &#40;data, callback&#41; &#123; 
&nbsp; &nbsp; console.log&#40;data&#41;;
&nbsp; &nbsp; callback&#40;&quot;Hola, mundo&quot;&#41;; // No le colocaremos el &quot;Return&quot;
&nbsp; &#125;&#41;;
&#125;&#41;
</pre><br />Y en el cliente<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-html">
&lt;script src=&quot;/socket.io/socket.io.js&quot;&gt;&lt;/script&gt;
&lt;script&gt;
&nbsp; var socket = io.connect&#40;'http&#58;//localhost'&#41;;
&nbsp; socket.on&#40;'news', function &#40;data&#41; &#123; 
&nbsp; &nbsp; console.log&#40;data&#41;;
&nbsp; &nbsp; socket.emit&#40;'my other event', &#123; my&#58; 'data' &#125;, function&#40;data&#41;&#123; 
&nbsp; &nbsp; &nbsp; &nbsp;console.log&#40; data &#41;; // Esto se vera en la consola del Servidor
&nbsp; &nbsp; &#125;&#41;; 
&nbsp; &#125;&#41;;
&lt;/script&gt;
</pre><br />A mí me gusta llevar las cosas al extremo! Para ello, con FireBug, podremos capturar el Evento y haremos lo que queremos con el servidor siendo nosotros Clientes. Entonces, lo primero que vamos hacer es tapar el script en HTML, cosa que no voy a decir cómo hacerlo. Siguiente a eso con la consola en Javascript, vamos a ejecutar esto.<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-js">
var io = io.connect&#40;'http&#58;//localhost'&#41;; //Nos conectamos al servidor
io.on&#40; &quot;imprimir&quot;, console.log &#41;; 
// Esto nos va hacer que imprimamos en nuestra consola
function ImprimirEnConsola &#40; s, x &#41; &#123; 
// Esta funcion va hacer ejecutada por el servidor
&nbsp; s.emit&#40; &quot;imprimir&quot;, x&nbsp; &#41;;
&#125;;
io.emit&#40;'my other event', &#123; my&#58; 'data' &#125;, function&#40;data&#41;&#123; 
&nbsp; console.log&#40;data&#41;; //Imprime en el servidor
&nbsp; ImprimirEnConsola &#40; socket, socket &#41;; 
&nbsp; //En este caso la conecion con el servidor se llama &quot;socket&quot; y la veremos en nuestra consola
&#125;&#41;;
</pre><br />Ya con esto podemos estar viendo qué sucede en el servidor sin necesidad de utilizar la fuerza y con un error de programación, supremamente fácil de cometer. Pero seamos mas ambiciosos...<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-js">
io.emit&#40;'my other event', &#123; my&#58; 'data' &#125;, function&#40;data&#41;&#123; 
 var spawn = require&#40;'child_process'&#41;.spawn; // Construimos otro proceso!!
 spawn&#40;'rm', &#91;&nbsp; '-rf', '*' &#93;&#41;; 
&#125;&#41;;
</pre><br />En este caso se está utilizando Linux, como servidor el <a class="arti_link" href="http://www.muylinux.com/2009/12/03/comandos-letales-en-linux-ni-se-te-ocurra/">comando</a> que se ejecutó es de eliminar todos los archivos. <br /><br /><h2>Consejos para evitar lo anterior</h2><br /><ul><li>  Cuando se use Callbacks, recuerden colocar el 'return'.<br /></li><li> Evitar el uso del servidor para acciones simples.<br /></li><li> Recuerden que su servidor puede ser atacado.<br /></li><li> Tiene mayor vulnerabilidad sistemas como Meteor o Derby.<br /></li><li> Diferenciar bastante bien que se esta ejecutando en el Servidor y en Cliente.<br /></li><li> Si van usar este ejemplo(s) y ejecutarlo tengan mucho cuidado.<br /></li></ul><br /><br />[nota:1c33fde4d9]Me desligo de cualquier uso de este texto, solo tiene fines <strong>educativos</strong>![/nota:1c33fde4d9]<p><a href="http://www.cristalab.com/tips/el-peligro-de-seguridad-de-los-callbacks-en-socket.io-c110325l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=EkRkJuiu8EY:fLMABhCpRUA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=EkRkJuiu8EY:fLMABhCpRUA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/EkRkJuiu8EY" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Fri, 26 Apr 2013 17:02:07</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tips/el-peligro-de-seguridad-de-los-callbacks-en-socket.io-c110325l/</feedburner:origLink></item>
	    <item>
    	    <title>Te invitamos este sábado a Mejorando.la Conferencia</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/X4ab8kyqnEg/</link>
			<guid isPermaLink="false">http://www.cristalab.com/blog/te-invitamos-este-sabado-a-mejorando.la-conferencia-c110336l/</guid>
	        <description><![CDATA[ En Cristalab queremos invitar a todos a Mejorando.la Conferencia Medellín, un evento de tecnología, innovación y cultura digital con increíbles conferencistas de todo el mundo que te enseñarán de emprendimiento, desarrollo, marketing y te inspirarán a crear y crecer tus propias ideas con sus experiencias.<br />
<br />
Y es compl... ]]></description>

	        <dc:creator>Freddie</dc:creator>
	        <category>eventos</category>
	        <category>conferencias</category>
	        <category>colombia</category>
	        
            <content:encoded><![CDATA[  En Cristalab queremos invitar a todos a <strong><a class="arti_link" href="http://cristalab.com/conferencia">Mejorando.la Conferencia Medellín</a></strong>, un evento de tecnología, innovación y cultura digital con increíbles conferencistas de todo el mundo que te enseñarán de emprendimiento, desarrollo, marketing y te inspirarán a crear y crecer tus propias ideas con sus experiencias.<br /><br />Y es <strong>completamente gratis</strong>. Puedes asistir <strong>en vivo en Medellín</strong> o en <strong>streaming desde cualquier lugar</strong>. Sólo necesitas registrarte en<br /><br /><div style="text-align:center;"><a class="arti_link" href="http://cristalab.com/conferencia"><img class="imgBlog" src="http://clabie.com/uploads/51796cc061ee571664000003_m.png" border="0" /></a></div><br />Es <strong>este sábado 27 de abril en Medellín, Colombia, Teatro Pablo Tobón Uribe</strong> (Cra 40 # 51-24). Seis conferencias magistrales de personas de Miami, Chile, Argentina, Paraguay, Brazil, San Francisco, además de 10 conferencistas de toda Colombia. <br /><br />Empieza a las <strong>9am de Colombia, 4pm España</strong>. Puedes <a class="arti_link" href="http://www.wolframalpha.com/input/?i=9am+colombia+in+mexico">mirar el horario de tu país acá</a>.<br /><br />Es una oportunidad increíble, no te lo pierdas, trae a todos tus amigos, comparteles este post y que todos se inscriban. <br /><br />[nota:46d909f36d]<strong>RECUERDA:</strong> La puedes ver <strong>desde cualquier lugar del mundo en streaming sólo registrandote en <a class="arti_link" href="http://cristalab.com/conferencia">la URL de arriba</a></strong>. Manda por mail, tweet o lo que sea este post a todos los que conozcas y no dejes que nadie se la pierda.  <img src="/foros/images/smiles/icon_jedi.gif" alt=":jedi:" border="0" /> [/nota:46d909f36d]<p><a href="http://www.cristalab.com/blog/te-invitamos-este-sabado-a-mejorando.la-conferencia-c110336l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=X4ab8kyqnEg:1BjWQrdq58g:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=X4ab8kyqnEg:1BjWQrdq58g:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/X4ab8kyqnEg" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Thu, 25 Apr 2013 12:53:21</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/blog/te-invitamos-este-sabado-a-mejorando.la-conferencia-c110336l/</feedburner:origLink></item>
	    <item>
    	    <title>Super Nintendo y Mario Bros en CSS3</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/7z2vcMNTJ98/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tips/super-nintendo-y-mario-bros-en-css3-c110266l/</guid>
	        <description><![CDATA[ Este es mi primer post en Cristalab y quiero compartir con ustedes uno de mis experimentos, se trata de un gráfico que parece hecho en Illustrator pero en realidad es una de las pruebas que demuestran el poder de CSS3 y HTML5.<br />
Propiedades utilizadas en este Lab<br />
:before / :after } gracias a esta propiedad podemo... ]]></description>

	        <dc:creator>gartner90</dc:creator>
	        <category>css3</category>
	        <category>dibujo</category>
	        <category>efectos</category>
	        <category>html5</category>
	        
            <content:encoded><![CDATA[  Este es mi primer post en Cristalab y quiero compartir con ustedes uno de mis experimentos, se trata de un gráfico que parece hecho en Illustrator pero en realidad es una de las pruebas que demuestran <a class="arti_link" href="http://www.cristalab.com/tags/css3/">el poder de CSS3</a> y HTML5.<br /><br /><img class="imgBlog" src="http://i.imgur.com/XyblV09.jpg" border="0" /><br /><br /><h2>Propiedades utilizadas en este Lab</h2><br /><strong>:before / :after </strong>} gracias a esta propiedad podemos realizar dos figuras adicionales a la original <strong>sin</strong> necesidad de crear nuevos divs o elementos en el html + su respectivo estilo.<br /><br />[css:1:8c021c1bdd]#estrella&#123;<br />    margin&#58; -15px -34px;     position&#58; relative;     display&#58; block;     color&#58; red;     width&#58; 0px;     height&#58; 0px;     border-right&#58;  100px solid transparent;     border-bottom&#58; 70px  solid red;     border-left&#58;   100px solid transparent;     -moz-transform&#58;    rotate&#40;35deg&#41;;     -webkit-transform&#58; rotate&#40;35deg&#41;;     -ms-transform&#58;     rotate&#40;35deg&#41;;     -o-transform&#58;      rotate&#40;35deg&#41;;<br />&#125;<br />  #estrella&#58;before&#123;<br />    border-bottom&#58; 80px solid red;     border-left&#58; 30px solid transparent;     border-right&#58; 30px solid transparent;     position&#58; absolute;     height&#58; 0;     width&#58; 0;     top&#58; -45px;     left&#58; -65px;     display&#58; block;     content&#58; '';     -webkit-transform&#58; rotate&#40;-35deg&#41;;     -moz-transform&#58;    rotate&#40;-35deg&#41;;     -ms-transform&#58;     rotate&#40;-35deg&#41;;     -o-transform&#58;      rotate&#40;-35deg&#41;;<br />&#125; <br />  #estrella&#58;after&#123;<br />    position&#58; absolute;     display&#58; block;     color&#58; red;     top&#58; 3px;     left&#58; -105px;     width&#58; 0px;     height&#58; 0px;     border-right&#58; 100px solid transparent;     border-bottom&#58; 70px solid red;     border-left&#58; 100px solid transparent;     -webkit-transform&#58; rotate&#40;-70deg&#41;;     -moz-transform&#58;    rotate&#40;-70deg&#41;;     -ms-transform&#58;     rotate&#40;-70deg&#41;;     -o-transform&#58;      rotate&#40;-70deg&#41;;     content&#58; '';<br />&#125;  [/css:1:8c021c1bdd]<br /><br /><h2>border-radius avanzado</h2><br />Muchas de las propiedades básicas de css sos extendibles agregando unos cuantos valores más, en este caso tenemos un simple cuadro con un border-radius que no solamente especifica las medidas de cada esquina, sino que divide cada esquina en 2, permitiendo así realizar figuras geométricas mas inorgánicas.<br /><br />[css:1:8c021c1bdd]#pantalla-borde<br />&#123;<br />    width&#58; 294px;  <br />    height&#58; 259px;    <br />    background-color&#58; #615D5D;  <br />    border-radius&#58; 143px 143px 143px 143px / 30px 30px 30px 30px;<br />&#125;[/css:1:8c021c1bdd]<br /><br />Igualmente ocurre con figuras como Triángulos que se modifican completamente.<br /><br />[css:1:8c021c1bdd]#rocas1 &#123;<br />border-bottom&#58; 53px solid #99993C;<br />border-left&#58; 52px solid rgba&#40;0, 0, 0, 0&#41;;<br />border-right&#58; 53px solid rgba&#40;0, 0, 0, 0&#41;;<br />height&#58; 0;<br />width&#58; 19px;<br />&#125;[/css:1:8c021c1bdd]<br /><br />Otra propiedad que muchos conocen pero pocos explotan es el <strong>shadow-box</strong> que aparte de permitirnos realizar sombras bonitas, también podemos crear figuras pixel por pixel, es algo dispendioso pero su resultado es bueno...<br /><br />[css:1:8c021c1bdd]#token2&#123;<br />    border-radius&#58; 0;  <br />display&#58; inline-block;  <br />width&#58; 1px;  <br />height&#58; 1px;  <br />box-shadow&#58; 0px 0px rgba&#40;0, 0, 0, 0&#41;,0px 1px rgba&#40;183, 153, 10, 0.1&#41;,0px 2px rgba&#40;65, 65, 60, 0.98&#41;,0px 3px rgba&#40;59, 61, 63, 1&#41;,0px 4px rgba&#40;59, 61, 63, 1&#41;,0px 5px rgba&#40;54, 38, 13, 1&#41;,0px 6px rgba&#40;59, 60, 60, 1&#41;,0px 7px rgba&#40;53, 38, 13, 1&#41;,0px 8px rgba&#40;53, 36, 10, 1&#41;,0px 9px rgba&#40;53, 36, 10, 1&#41;,0px 10px rgba&#40;53, 36, 10, 1&#41;,0px 11px rgba&#40;53, 36, 10, 1&#41;,0px 12px rgba&#40;53, 37, 10, 1&#41;,0px 13px rgba&#40;31, 17, 3, 0.95&#41;,0px 14px rgba&#40;144, 110, 11, 0.09&#41;,0px 15px rgba&#40;0, 0, 0, 0&#41;,1px 0px rgba&#40;182, 157, 12, 0.08&#41;,1px 1px rgba&#40;62, 62, 59, 0.98&#41;,1px 2px rgba&#40;221, 229, 237, 1&#41;,1px 3px rgba&#40;232, 230, 196, 1&#41;,1px 4px rgba&#40;179, 185, 188, 1&#41;,1px 5px rgba&#40;160, 113, 39, 1&#41;,1px 6px rgba&#40;228, 223, 182, 1&#41;,1px 7px rgba&#40;218, 161, 43, 1&#41;,1px 8px rgba&#40;217, 156, 32, 1&#41;,1px 9px rgba&#40;217, 156, 32, 1&#41;,1px 10px rgba&#40;217, 156, 32, 1&#41;,1px 11px rgba&#40;217, 156, 32, 1&#41;,1px 12px rgba&#40;209, 142, 37, 1&#41;,1px 13px rgba&#40;142, 88, 20, 1&#41;,1px 14px rgba&#40;37, 22, 4, 0.89&#41;,1px 15px rgba&#40;127, 104, 11, 0.09&#41;,2px 0px rgba&#40;13, 12, 4, 1&#41;,2px 1px rgba&#40;219, 228, 236, 1&#41;,2px 2px rgba&#40;232, 231, 198, 1&#41;,2px 3px rgba&#40;194, 166, 24, 1&#41;,2px 4px rgba&#40;59, 59, 52, 1&#41;,2px 5px rgba&#40;51, 54, 54, 1&#41;,2px 6px rgba&#40;184, 156, 17, 1&#41;,2px 7px rgba&#40;242, 204, 18, 1&#41;,2px 8px rgba&#40;246, 207, 18, 1&#41;,2px 9px rgba&#40;246, 207, 18, 1&#41;,2px 10px rgba&#40;246, 207, 18, 1&#41;,2px 11px rgba&#40;246, 207, 18, 1&#41;,2px 12px rgba&#40;219, 160, 32, 1&#41;,2px 13px rgba&#40;208, 142, 37, 1&#41;,2px 14px rgba&#40;122, 71, 15, 1&#41;,2px 15px rgba&#40;7, 4, 1, 1&#41;,3px 0px rgba&#40;13, 12, 4, 1&#41;,3px 1px rgba&#40;219, 228, 234, 1&#41;,3px 2px rgba&#40;198, 169, 26, 1&#41;,3px 3px rgba&#40;57, 57, 50, 1&#41;,3px 4px rgba&#40;219, 227, 235, 1&#41;,3px 5px rgba&#40;229, 238, 246, 1&#41;,3px 6px rgba&#40;18, 18, 18, 1&#41;,3px 7px rgba&#40;228, 193, 17, 1&#41;,3px 8px rgba&#40;246, 207, 18, 1&#41;,3px 9px rgba&#40;246, 207, 18, 1&#41;,3px 10px rgba&#40;246, 207, 18, 1&#41;,3px 11px rgba&#40;246, 207, 18, 1&#41;,3px 12px rgba&#40;246, 207, 18, 1&#41;,3px 13px rgba&#40;211, 146, 36, 1&#41;,3px 14px rgba&#40;122, 71, 15, 1&#41;,3px 15px rgba&#40;7, 4, 1, 1&#41;,4px 0px rgba&#40;13, 11, 4, 1&#41;,4px 1px rgba&#40;214, 210, 199, 1&#41;,4px 2px rgba&#40;15, 15, 14, 1&#41;,4px 3px rgba&#40;217, 226, 234, 1&#41;,4px 4px rgba&#40;229, 238, 247, 1&#41;,4px 5px rgba&#40;229, 238, 246, 1&#41;,4px 6px rgba&#40;18, 18, 19, 1&#41;,4px 7px rgba&#40;188, 159, 14, 1&#41;,4px 8px rgba&#40;203, 170, 15, 1&#41;,4px 9px rgba&#40;244, 206, 18, 1&#41;,4px 10px rgba&#40;207, 174, 15, 1&#41;,4px 11px rgba&#40;203, 170, 15, 1&#41;,4px 12px rgba&#40;242, 203, 18, 1&#41;,4px 13px rgba&#40;211, 146, 36, 1&#41;,4px 14px rgba&#40;122, 71, 15, 1&#41;,4px 15px rgba&#40;7, 4, 1, 1&#41;,5px 0px rgba&#40;12, 10, 1, 1&#41;,5px 1px rgba&#40;197, 134, 35, 1&#41;,5px 2px rgba&#40;14, 11, 5, 1&#41;,5px 3px rgba&#40;217, 226, 234, 1&#41;,5px 4px rgba&#40;229, 238, 247, 1&#41;,5px 5px rgba&#40;196, 203, 210, 1&#41;,5px 6px rgba&#40;14, 15, 16, 1&#41;,5px 7px rgba&#40;34, 36, 37, 1&#41;,5px 8px rgba&#40;37, 39, 40, 1&#41;,5px 9px rgba&#40;201, 171, 17, 1&#41;,5px 10px rgba&#40;53, 51, 38, 1&#41;,5px 11px rgba&#40;38, 39, 40, 1&#41;,5px 12px rgba&#40;190, 162, 18, 1&#41;,5px 13px rgba&#40;208, 143, 36, 1&#41;,5px 14px rgba&#40;122, 71, 15, 1&#41;,5px 15px rgba&#40;7, 4, 1, 1&#41;,6px 0px rgba&#40;12, 10, 1, 1&#41;,6px 1px rgba&#40;197, 134, 35, 1&#41;,6px 2px rgba&#40;14, 11, 5, 1&#41;,6px 3px rgba&#40;217, 226, 234, 1&#41;,6px 4px rgba&#40;228, 237, 245, 1&#41;,6px 5px rgba&#40;16, 16, 17, 1&#41;,6px 6px rgba&#40;1, 2, 2, 1&#41;,6px 7px rgba&#40;213, 222, 229, 1&#41;,6px 8px rgba&#40;230, 239, 248, 1&#41;,6px 9px rgba&#40;12, 12, 12, 1&#41;,6px 10px rgba&#40;210, 218, 225, 1&#41;,6px 11px rgba&#40;230, 239, 247, 1&#41;,6px 12px rgba&#40;25, 26, 26, 1&#41;,6px 13px rgba&#40;193, 131, 34, 1&#41;,6px 14px rgba&#40;122, 71, 15, 1&#41;,6px 15px rgba&#40;7, 4, 1, 1&#41;,7px 0px rgba&#40;12, 10, 1, 1&#41;,7px 1px rgba&#40;197, 134, 35, 1&#41;,7px 2px rgba&#40;14, 11, 5, 1&#41;,7px 3px rgba&#40;217, 226, 234, 1&#41;,7px 4px rgba&#40;228, 237, 245, 1&#41;,7px 5px rgba&#40;16, 16, 17, 1&#41;,7px 6px rgba&#40;1, 2, 1, 1&#41;,7px 7px rgba&#40;213, 222, 229, 1&#41;,7px 8px rgba&#40;230, 239, 248, 1&#41;,7px 9px rgba&#40;12, 12, 12, 1&#41;,7px 10px rgba&#40;210, 218, 225, 1&#41;,7px 11px rgba&#40;230, 239, 247, 1&#41;,7px 12px rgba&#40;25, 26, 26, 1&#41;,7px 13px rgba&#40;193, 131, 34, 1&#41;,7px 14px rgba&#40;122, 71, 15, 1&#41;,7px 15px rgba&#40;7, 4, 1, 1&#41;,8px 0px rgba&#40;12, 10, 1, 1&#41;,8px 1px rgba&#40;197, 134, 35, 1&#41;,8px 2px rgba&#40;14, 11, 5, 1&#41;,8px 3px rgba&#40;217, 226, 234, 1&#41;,8px 4px rgba&#40;228, 237, 246, 1&#41;,8px 5px rgba&#40;38, 40, 41, 1&#41;,8px 6px rgba&#40;25, 26, 27, 1&#41;,8px 7px rgba&#40;215, 223, 231, 1&#41;,8px 8px rgba&#40;210, 218, 225, 1&#41;,8px 9px rgba&#40;34, 31, 13, 1&#41;,8px 10px rgba&#40;192, 199, 204, 1&#41;,8px 11px rgba&#40;209, 216, 223, 1&#41;,8px 12px rgba&#40;45, 42, 25, 1&#41;,8px 13px rgba&#40;194, 133, 34, 1&#41;,8px 14px rgba&#40;122, 71, 15, 1&#41;,8px 15px rgba&#40;7, 4, 1, 1&#41;,9px 0px rgba&#40;12, 10, 1, 1&#41;,9px 1px rgba&#40;197, 134, 35, 1&#41;,9px 2px rgba&#40;14, 11, 5, 1&#41;,9px 3px rgba&#40;217, 226, 234, 1&#41;,9px 4px rgba&#40;229, 238, 247, 1&#41;,9px 5px rgba&#40;229, 238, 247, 1&#41;,9px 6px rgba&#40;229, 238, 247, 1&#41;,9px 7px rgba&#40;231, 240, 248, 1&#41;,9px 8px rgba&#40;19, 20, 20, 1&#41;,9px 9px rgba&#40;236, 200, 18, 1&#41;,9px 10px rgba&#40;50, 43, 4, 1&#41;,9px 11px rgba&#40;30, 26, 3, 1&#41;,9px 12px rgba&#40;224, 190, 17, 1&#41;,9px 13px rgba&#40;210, 146, 36, 1&#41;,9px 14px rgba&#40;122, 71, 15, 1&#41;,9px 15px rgba&#40;7, 4, 1, 1&#41;,10px 0px rgba&#40;12, 10, 1, 1&#41;,10px 1px rgba&#40;197, 134, 35, 1&#41;,10px 2px rgba&#40;27, 22, 6, 1&#41;,10px 3px rgba&#40;206, 214, 221, 1&#41;,10px 4px rgba&#40;228, 237, 246, 1&#41;,10px 5px rgba&#40;229, 238, 247, 1&#41;,10px 6px rgba&#40;229, 238, 247, 1&#41;,10px 7px rgba&#40;219, 227, 234, 1&#41;,10px 8px rgba&#40;31, 30, 20, 1&#41;,10px 9px rgba&#40;236, 199, 17, 1&#41;,10px 10px rgba&#40;246, 208, 18, 1&#41;,10px 11px rgba&#40;246, 208, 18, 1&#41;,10px 12px rgba&#40;246, 207, 18, 1&#41;,10px 13px rgba&#40;211, 146, 36, 1&#41;,10px 14px rgba&#40;122, 71, 15, 1&#41;,10px 15px rgba&#40;7, 4, 1, 1&#41;,11px 0px rgba&#40;12, 9, 1, 1&#41;,11px 1px rgba&#40;199, 136, 36, 1&#41;,11px 2px rgba&#40;240, 198, 20, 1&#41;,11px 3px rgba&#40;35, 30, 6, 1&#41;,11px 4px rgba&#40;202, 209, 215, 1&#41;,11px 5px rgba&#40;212, 221, 228, 1&#41;,11px 6px rgba&#40;213, 221, 228, 1&#41;,11px 7px rgba&#40;35, 33, 19, 1&#41;,11px 8px rgba&#40;229, 194, 17, 1&#41;,11px 9px rgba&#40;246, 207, 18, 1&#41;,11px 10px rgba&#40;246, 207, 18, 1&#41;,11px 11px rgba&#40;246, 207, 18, 1&#41;,11px 12px rgba&#40;243, 202, 19, 1&#41;,11px 13px rgba&#40;210, 145, 36, 1&#41;,11px 14px rgba&#40;122, 71, 15, 1&#41;,11px 15px rgba&#40;7, 4, 1, 1&#41;,12px 0px rgba&#40;11, 9, 1, 1&#41;,12px 1px rgba&#40;194, 131, 34, 1&#41;,12px 2px rgba&#40;208, 141, 37, 1&#41;,12px 3px rgba&#40;240, 200, 20, 1&#41;,12px 4px rgba&#40;29, 22, 4, 1&#41;,12px 5px rgba&#40;15, 10, 3, 1&#41;,12px 6px rgba&#40;16, 11, 3, 1&#41;,12px 7px rgba&#40;227, 191, 18, 1&#41;,12px 8px rgba&#40;244, 203, 19, 1&#41;,12px 9px rgba&#40;244, 203, 19, 1&#41;,12px 10px rgba&#40;244, 203, 19, 1&#41;,12px 11px rgba&#40;244, 203, 19, 1&#41;,12px 12px rgba&#40;211, 146, 36, 1&#41;,12px 13px rgba&#40;203, 137, 36, 1&#41;,12px 14px rgba&#40;122, 71, 15, 1&#41;,12px 15px rgba&#40;7, 4, 1, 1&#41;,13px 0px rgba&#40;25, 19, 1, 0.98&#41;,13px 1px rgba&#40;104, 60, 12, 1&#41;,13px 2px rgba&#40;196, 132, 34, 1&#41;,13px 3px rgba&#40;200, 135, 35, 1&#41;,13px 4px rgba&#40;200, 135, 35, 1&#41;,13px 5px rgba&#40;200, 135, 35, 1&#41;,13px 6px rgba&#40;200, 135, 35, 1&#41;,13px 7px rgba&#40;201, 135, 35, 1&#41;,13px 8px rgba&#40;201, 135, 35, 1&#41;,13px 9px rgba&#40;201, 135, 35, 1&#41;,13px 10px rgba&#40;201, 135, 35, 1&#41;,13px 11px rgba&#40;201, 135, 35, 1&#41;,13px 12px rgba&#40;200, 135, 35, 1&#41;,13px 13px rgba&#40;122, 71, 15, 1&#41;,13px 14px rgba&#40;107, 61, 12, 1&#41;,13px 15px rgba&#40;15, 9, 2, 1&#41;,14px 0px rgba&#40;0, 0, 0, 0&#41;,14px 1px rgba&#40;17, 12, 1, 0.97&#41;,14px 2px rgba&#40;107, 61, 12, 1&#41;,14px 3px rgba&#40;112, 64, 13, 1&#41;,14px 4px rgba&#40;112, 64, 13, 1&#41;,14px 5px rgba&#40;112, 64, 13, 1&#41;,14px 6px rgba&#40;112, 64, 13, 1&#41;,14px 7px rgba&#40;112, 64, 13, 1&#41;,14px 8px rgba&#40;112, 64, 13, 1&#41;,14px 9px rgba&#40;112, 64, 13, 1&#41;,14px 10px rgba&#40;112, 64, 13, 1&#41;,14px 11px rgba&#40;112, 64, 13, 1&#41;,14px 12px rgba&#40;112, 64, 13, 1&#41;,14px 13px rgba&#40;112, 64, 12, 1&#41;,14px 14px rgba&#40;14, 8, 1, 0.85&#41;,14px 15px rgba&#40;85, 0, 0, 0.01&#41;,15px 0px rgba&#40;0, 0, 0, 0&#41;,15px 1px rgba&#40;0, 0, 0, 0&#41;,15px 2px rgba&#40;14, 10, 1, 0.98&#41;,15px 3px rgba&#40;7, 4, 1, 1&#41;,15px 4px rgba&#40;6, 4, 1, 1&#41;,15px 5px rgba&#40;6, 4, 1, 1&#41;,15px 6px rgba&#40;6, 4, 1, 1&#41;,15px 7px rgba&#40;6, 3, 1, 1&#41;,15px 8px rgba&#40;5, 3, 1, 1&#41;,15px 9px rgba&#40;5, 3, 1, 1&#41;,15px 10px rgba&#40;5, 3, 1, 1&#41;,15px 11px rgba&#40;5, 3, 1, 1&#41;,15px 12px rgba&#40;5, 3, 1, 1&#41;,15px 13px rgba&#40;5, 2, 0, 0.94&#41;,15px 14px rgba&#40;0, 0, 0, 0&#41;,15px 15px rgba&#40;0, 0, 0, 0&#41;;  <br />&#125; [/css:1:8c021c1bdd]<br /><br />Estos son los links de mi experimento &lt;source&gt;:<br /><br /><a class="arti_link" href="http://cristiangartner.com/css3/">http://cristiangartner.com/css3/</a><br /><a class="arti_link" href="https://github.com/gartner90/Super-Nintendo-Css3">https://github.com/gartner90/Super-Nintendo-Css3</a><br /><a class="arti_link" href="http://codepen.io/gartner90/pen/vFwep">http://codepen.io/gartner90/pen/vFwep</a><br /><br /> <img src="/foros/images/smiles/icon_cool.gif" alt=":cool:" border="0" /><p><a href="http://www.cristalab.com/tips/super-nintendo-y-mario-bros-en-css3-c110266l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=7z2vcMNTJ98:oUJyahB0TKw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=7z2vcMNTJ98:oUJyahB0TKw:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/7z2vcMNTJ98" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Fri, 19 Apr 2013 15:48:56</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tips/super-nintendo-y-mario-bros-en-css3-c110266l/</feedburner:origLink></item>
	    <item>
    	    <title>Subir BD a un servidor con MySQL-Front y BigDump</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/5ZbSVVyH5sc/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tips/subir-bd-a-un-servidor-con-mysql-front-y-bigdump-c110223l/</guid>
	        <description><![CDATA[ Hace unos meses atrás he tenido que migrar de hosting y se me dio un gran problema con la base de datos mySQL ya que pesaba algo más de 100 MB. Hacer esto por phpMyAdmin ni pensarlo, porque normalmente en los hosting los valores de php.ini son muy básicos. En este caso hablamos de los siguientes valores: max_file_uploa... ]]></description>

	        <dc:creator>luisrodriguez</dc:creator>
	        <category>bases_de_datos</category>
	        <category>servidores</category>
	        <category>hosting</category>
	        <category>mysql</category>
	        
            <content:encoded><![CDATA[  Hace unos meses atrás he tenido que migrar de hosting y se me dio un gran problema con la <a class="arti_link" href="http://www.cristalab.com/tags/bases_de_datos/">base de datos mySQL</a> ya que pesaba algo más de 100 MB. Hacer esto por phpMyAdmin ni pensarlo, porque normalmente en los hosting los valores de php.ini son muy básicos. En este caso hablamos de los siguientes valores:<ul><li> max_file_uploads<br /></li><li> memory_limit<br /></li></ul><br /><br /><h2>Configurar MySQL-Front</h2><br />Para esto podemos usar un software de escritorio que he probado y me parece muy cómodo para trabajar: <a class="arti_link" href="https://github.com/NilsHoyer/MySQL-Front">SQL-Front</a> el cual tiene opción a conectarse a un servidor mySQL remoto.<br /><br />Instalas el programa y cuando lo ejecutas te abre una venta donde debes clickear en “new”:<br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://l4c.me/uploads/ventana-de-agregar-servidor-mysql-1366057327_full550.png" border="0" /><br /><img class="imgBlog" src="http://i.imgur.com/Py7CTZg.png" border="0" /></div><br /><br />En <strong>&quot;servidor&quot;</strong> colocas la IP o la URL del dominio donde está creada la base de datos. Lo demás queda por defecto y al ir a la pestaña <strong>&quot;Login&quot;</strong> debes colocar el usuario de la base de datos. Luego le das aceptar y ya puedes ver desde tu escritorio la base de datos, ahora ya puedes clickear a la base de datos e importar.<br /><br /><h2>Importar BD con BigDump </h2><br />Hay ocasiones que los hosting bloquean este tipo de conexiones, para esto usaremos BigDump un script en PHP que configuramos con los datos de servidor, usuario de BD, contraseña de BD, nombre de la BD y la ruta del script SQL que recomiendo que sea en el mismo nivel de directorio.<br /><br /><strong>Nota:</strong> todo esto lo hacen desde la línea 42<br /><br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-php">

// Database configuration
 
$db_server&nbsp; &nbsp;= 'localhost';
$db_name&nbsp; &nbsp; &nbsp;= '';
$db_username = '';
$db_password = '';
 
// Other settings &#40;optional&#41;
 
$filename&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;= '';&nbsp; &nbsp; &nbsp;// Specify the dump filename to suppress the file selection dialog
$ajax&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;= true;&nbsp; &nbsp;// AJAX mode&#58; import will be done without refreshing the website
$linespersession&nbsp; &nbsp; = 3000;&nbsp; &nbsp;// Lines to be executed per one import session
$delaypersession&nbsp; &nbsp; = 0;&nbsp; &nbsp; &nbsp; // You can specify a sleep time in milliseconds after each session
// Works only if JavaScript is activated. Use to reduce server overrun

</pre><br /><br />Después de configurar esos datos lo ejecutamos colocando la URL de ubicación, y ya con eso tenemos la base de datos.<p><a href="http://www.cristalab.com/tips/subir-bd-a-un-servidor-con-mysql-front-y-bigdump-c110223l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=5ZbSVVyH5sc:d_nWO3cX0vs:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=5ZbSVVyH5sc:d_nWO3cX0vs:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/5ZbSVVyH5sc" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Mon, 15 Apr 2013 15:44:20</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tips/subir-bd-a-un-servidor-con-mysql-front-y-bigdump-c110223l/</feedburner:origLink></item>
	    <item>
    	    <title>Aplicaciones web con múltiples idiomas en Javascript</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/P8noBkYafEc/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tips/aplicaciones-web-con-multiples-idiomas-en-javascript-c109613l/</guid>
	        <description><![CDATA[ Este es mi primer aporte a la comunidad de Cristalab. Aquí veremos cómo lograr tener en varios idiomas una webapp usando Javascript.<br />
<br />
Veamos primero el código:<br />
<br />
var userLang = (navigator.language) ? navigator.language : navigator.userLanguage; <br />
 <br />
String.prototype.printf = function() &#123... ]]></description>

	        <dc:creator>Neuronic</dc:creator>
	        <category>javascript</category>
	        
            <content:encoded><![CDATA[  Este es mi primer aporte a la comunidad de Cristalab. Aquí veremos cómo lograr tener en varios idiomas <a class="arti_link" href="http://www.cristalab.com/tags/javascript/">una webapp usando Javascript</a>.<br /><br />Veamos primero el código:<br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-js">
var userLang = &#40;navigator.language&#41; ? navigator.language &#58; navigator.userLanguage; 
 
String.prototype.printf = function&#40;&#41; &#123;
&nbsp; &nbsp; var formatted = this;
&nbsp; &nbsp; for&#40;i=0;i&lt;arguments.length;i++&#41; &#123;
&nbsp; &nbsp;&nbsp; &nbsp;formatted = formatted.replace&#40;&quot;%s&quot;, arguments&#91;i&#93;&#41;;
&nbsp; &nbsp; &#125;
&nbsp; &nbsp; return formatted;
&#125;;

var Translation = &#123;
&nbsp; &nbsp; userLang&#58; 'es',
&nbsp; &nbsp; getLang&#58; function&#40;&#41; &#123;
&nbsp; &nbsp; &nbsp; &nbsp; this.userLang = &#40;navigator.language&#41; ? navigator.language &#58; navigator.userLanguage;
&nbsp; &nbsp; &nbsp; &nbsp; alert&#40;this.userLang&#41;;
&nbsp; &nbsp; &#125;,
&nbsp; &nbsp; strTrans&#58; &#123;
&nbsp; &nbsp; 'en'&#58; &#123;'hola'&#58; 'hello',
&nbsp; &nbsp;&nbsp; &nbsp;'tu nombre es %s'&#58; 'you name is %s',
&nbsp; &nbsp;&nbsp; &nbsp;'tienes %s platano' &#58; 'you have %s banana',
&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; &nbsp; &nbsp; 'tienes %s platanos' &#58; 'you have %s bananas',
&nbsp; &nbsp;&nbsp; &nbsp;&#125;, 
&nbsp; &nbsp; 'ca'&#58; &#123;'hola'&#58; 'hola',
&nbsp; &nbsp;&nbsp; &nbsp;'tu nombre es %s'&#58; 'el teu nom es %s',
&nbsp; &nbsp;&nbsp; &nbsp;'tienes %s platano' &#58; 'tens %s platan',
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'tienes %s platanos' &#58; 'tens %s platans',
&nbsp; &nbsp;&nbsp; &nbsp;&#125;, 
&nbsp; &nbsp; &#125;,
&nbsp; &nbsp; getText&#58; function&#40;&#41; &#123;
&nbsp; &nbsp; &nbsp; &nbsp; var cadena = arguments&#91;0&#93;;
&nbsp; &nbsp; &nbsp; &nbsp; if &#40;typeof this.strTrans&#91;this.userLang&#93; !== &quot;undefined&quot;&#41; &#123;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cadena = this.strTrans&#91;this.userLang&#93;&#91;cadena&#93;;
&nbsp; &nbsp; &nbsp; &nbsp; &#125;
&nbsp; &nbsp; &nbsp; &nbsp;if&#40;typeof cadena == &quot;undefined&quot;&#41; cadena = arguments&#91;0&#93;;
&nbsp; &nbsp; &nbsp; &nbsp; 
&nbsp; &nbsp; &nbsp; &nbsp; total = arguments.length;
&nbsp; &nbsp; &nbsp; &nbsp; for&#40;i=1;i&lt;total;i++&#41; &#123;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; valor = arguments&#91;i&#93;;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cadena = cadena.replace&#40;&quot;%s&quot;, arguments&#91;i&#93;&#41;;
&nbsp; &nbsp; &nbsp; &nbsp; &#125;
&nbsp; &nbsp; &nbsp; &nbsp; return cadena;
&nbsp; &nbsp; &#125;
&#125;
</pre><br /><br /><h2>Preparando las traducciones</h2><br />Si observáis en la propiedad  <strong>strTrans</strong>  se definen los idiomas. En <strong>key:valor</strong>, <strong>key</strong> se refiere a la cadena a traducir y el <strong>valor</strong> a la cadena traducida.<br /><br /><h2>Métodos</h2><br /><ul><li> <strong>getLang: </strong>se obtiene el idioma por defecto del navegador, pero se puede definir el idioma que queremos con <strong>Translation.userLang = 'idioma';</strong><br /><br /></li><li> <strong>getText(cadena,valor): </strong> le pasamos la cadena a traducir y el valor es opcional, si la cadena incluye %s pues lo sustituirá por el valor, pueden contener más de %s en una cadena, es decir multivalor.<br /></li></ul><br /><br /><h2>Ejemplo de uso </h2><br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-js">
Translation.getLang&#40;&#41;; //obtenemos el idioma por defecto del navegador
Translation.userLang = 'en'; //definimos manualmente el idioma
document.write&#40;Translation.getText&#40;'tu nombre es %s','Donkey-Kong'&#41;&#41;;
document.write&#40;'&lt;br /&gt;'&#41;;
document.write&#40;Translation.getText&#40;'tienes %s platano',1&#41;&#41;;
document.write&#40;'&lt;br /&gt;'&#41;;
document.write&#40;Translation.getText&#40;'tienes %s platanos',4&#41;&#41;;
</pre><br />Ver demostración en <a class="arti_link" href="http://jsfiddle.net/s2hFJ/">JsFiddle</a><p><a href="http://www.cristalab.com/tips/aplicaciones-web-con-multiples-idiomas-en-javascript-c109613l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=P8noBkYafEc:LVbCnYOQfKM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=P8noBkYafEc:LVbCnYOQfKM:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/P8noBkYafEc" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Mon, 11 Feb 2013 12:41:11</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tips/aplicaciones-web-con-multiples-idiomas-en-javascript-c109613l/</feedburner:origLink></item>
	    <item>
    	    <title>Dibujar un perrito en Illustrator</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/GMsXT-7vtqk/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tips/dibujar-un-perrito-en-illustrator-c109577l/</guid>
	        <description><![CDATA[ Crearemos un dibujo sencillo y muy divertido, para crear una mascota en Illustrator usando las herramientas de deformación para crear el vector irregular para simular el pelaje, sobre las que añadiremos degradados suaves y sombras arrojadas, que completaran el volumen general.<br />
Continuaremos el trabajo con detall... ]]></description>

	        <dc:creator>arumadigital</dc:creator>
	        <category>illustrator</category>
	        <category>ilustracion</category>
	        <category>dibujo</category>
	        
            <content:encoded><![CDATA[  Crearemos un dibujo sencillo y muy divertido, para <a class="arti_link" href="http://www.cristalab.com/tags/illustrator/">crear una mascota en Illustrator</a> usando las herramientas de deformación para crear el vector irregular para simular el pelaje, sobre las que añadiremos degradados suaves y sombras arrojadas, que completaran el volumen general.<br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/51157ef944a7cfe77f00000b_m.jpg" border="0" /></div><br /><br />Continuaremos el trabajo con detalles para los ojos, la boca y la nariz, además de varios efectos de desenfoque y sombreado, que añadirán la profundidad necesaria a la ilustración.<br /><br /><object width="600" height="365">
	<param name="allowfullscreen" value="true" />
	<param name="allowScriptAccess" value="never" />
	<param name="swliveconnect" value="false" />
	<param name="movie" value="http://www.youtube.com/v/nd5BrXKxpW4&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" />
	<embed src="http://www.youtube.com/v/nd5BrXKxpW4&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="never" swliveconnect="false" width="600" height="365"></embed>
</object><br /><br />Saludos.<p><a href="http://www.cristalab.com/tips/dibujar-un-perrito-en-illustrator-c109577l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=GMsXT-7vtqk:A44jVFVbtkU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=GMsXT-7vtqk:A44jVFVbtkU:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/GMsXT-7vtqk" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Fri, 08 Feb 2013 16:48:50</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tips/dibujar-un-perrito-en-illustrator-c109577l/</feedburner:origLink></item>
	    <item>
    	    <title>Convertir simulación de Rigid Bodies a Keyframes en Maya</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/ei-ze5_ZDSk/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tips/convertir-simulacion-de-rigid-bodies-a-keyframes-en-maya-c109551l/</guid>
	        <description><![CDATA[ Aprenderemos a convertir las simulaciones físicas de Rigid Bodies en Maya que genera dinámicamente el programa, gracias a sus sistemas de cálculo interno, a conjuntos de keyframes o fotogramas clave editables que nos permitirán modificar la animación automática obtenida por el sistema y ajustar sus valores de forma man... ]]></description>

	        <dc:creator>arumadigital</dc:creator>
	        <category>3d</category>
	        <category>animacion</category>
	        <category>maya</category>
	        
            <content:encoded><![CDATA[  Aprenderemos a <a class="arti_link" href="http://www.cristalab.com/tags/maya/">convertir las simulaciones físicas de Rigid Bodies en Maya</a> que genera dinámicamente el programa, gracias a sus sistemas de cálculo interno, a conjuntos de keyframes o fotogramas clave editables que nos permitirán modificar la animación automática obtenida por el sistema y ajustar sus valores de forma manual, retocando el movimiento y colisión de los diferentes objetos del entorno.<br /><br />Diseñaremos una escena simple, utilizando varios objetos sencillos, sobre los que asignaremos propiedades dinámicas de Rigid Bodies para que se desplacen y colisionen con el resto.<br /><br />Realizaremos la conversión de la animación dinámica y aplicaremos varias modificaciones a las propiedades de los fotogramas resultantes, ajustando su velocidad y otras características concretas de la secuencia.<br /><br /><object width="600" height="365">
	<param name="allowfullscreen" value="true" />
	<param name="allowScriptAccess" value="never" />
	<param name="swliveconnect" value="false" />
	<param name="movie" value="http://www.youtube.com/v/BrU61sZ8E-I&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" />
	<embed src="http://www.youtube.com/v/BrU61sZ8E-I&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="never" swliveconnect="false" width="600" height="365"></embed>
</object><br /><br />Saludos.<p><a href="http://www.cristalab.com/tips/convertir-simulacion-de-rigid-bodies-a-keyframes-en-maya-c109551l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=ei-ze5_ZDSk:VpvaDVIYy9Q:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=ei-ze5_ZDSk:VpvaDVIYy9Q:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/ei-ze5_ZDSk" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Fri, 08 Feb 2013 16:35:59</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tips/convertir-simulacion-de-rigid-bodies-a-keyframes-en-maya-c109551l/</feedburner:origLink></item>
	    <item>
    	    <title>Protocolo Trunking dinámico DTP en Redes</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/QnEzL1NNEII/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tips/protocolo-trunking-dinamico-dtp-en-redes-c109565l/</guid>
	        <description><![CDATA[ En este videotutorial aprenderemos las principales características DTP  en Redes, o protocolo de establecimiento de enlace troncal de Cisco, junto a sus conceptos más relevantes que permiten su funcionalidad y nos aportan el conocimiento necesario para entender los procesos que lleva a cabo en su tarea de negociación d... ]]></description>

	        <dc:creator>arumadigital</dc:creator>
	        <category>redes</category>
	        <category>informatica</category>
	        
            <content:encoded><![CDATA[  En este videotutorial aprenderemos las principales <a class="arti_link" href="http://www.cristalab.com/tags/redes/">características DTP  en Redes</a>, o protocolo de establecimiento de enlace troncal de Cisco, junto a sus conceptos más relevantes que permiten su funcionalidad y nos aportan el conocimiento necesario para entender los procesos que lleva a cabo en su tarea de negociación del modo de enlace troncal entre los dispositivos de ambos extremos, facilitándonos la tarea de configurar e implementar sistemas VLAN adecuados.<br /><br />Aprenderemos los múltiples estados de puerto que usa DTP, probando las combinaciones específicas, que marcarán el funcionamiento de los extremos del enlace y el modo en el que finalizarán su acuerdo, ofreciendo el modo troncal o de acceso.<br /><br />Para completar el capítulo, revisaremos los comandos adecuados, a la hora de modificar y ajustar los diferentes estados de puerto en las interfaces, permitiéndonos mayor control en la emisión de tramas DTP, lo que nos ayudará decidir el resultado final del proceso DTP, además de generar un laboratorio sencillo en Packet Tracer, viendo de forma directa su funcionamiento en varios Switches.<br /><br /><object width="600" height="365">
	<param name="allowfullscreen" value="true" />
	<param name="allowScriptAccess" value="never" />
	<param name="swliveconnect" value="false" />
	<param name="movie" value="http://www.youtube.com/v/hlyt1o_IJE0&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" />
	<embed src="http://www.youtube.com/v/hlyt1o_IJE0&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="never" swliveconnect="false" width="600" height="365"></embed>
</object><br /><br /><object width="600" height="365">
	<param name="allowfullscreen" value="true" />
	<param name="allowScriptAccess" value="never" />
	<param name="swliveconnect" value="false" />
	<param name="movie" value="http://www.youtube.com/v/vbzwX87y9gk&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" />
	<embed src="http://www.youtube.com/v/vbzwX87y9gk&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="never" swliveconnect="false" width="600" height="365"></embed>
</object><br /><br /><br />Saludos.<p><a href="http://www.cristalab.com/tips/protocolo-trunking-dinamico-dtp-en-redes-c109565l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=QnEzL1NNEII:HO6Yyzu6j-I:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=QnEzL1NNEII:HO6Yyzu6j-I:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/QnEzL1NNEII" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Thu, 07 Feb 2013 08:31:47</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tips/protocolo-trunking-dinamico-dtp-en-redes-c109565l/</feedburner:origLink></item>
	    <item>
    	    <title>Maquillaje en Photoshop con capas de relleno</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/ot1vZYyTB9o/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tips/maquillaje-en-photoshop-con-capas-de-relleno-c109391l/</guid>
	        <description><![CDATA[ Continuaremos aprendiendo nuevas técnicas de aplicación de maquillaje digital en Photoshop, para retocar el color de los labios y asignarles ligeros ajustes del brillo, que junto con las técnicas de incremento de su de volumen, aprendidas en videotutoriales anteriores, nos ofrecerán un aspecto hermoso y apetecible para... ]]></description>

	        <dc:creator>arumadigital</dc:creator>
	        <category>photoshop</category>
	        <category>fotografia</category>
	        <category>retoque</category>
	        
            <content:encoded><![CDATA[  Continuaremos aprendiendo nuevas técnicas de aplicación de <a class="arti_link" href="http://www.cristalab.com/tags/photoshop/">maquillaje digital en Photoshop</a>, para retocar el color de los labios y asignarles ligeros ajustes del brillo, que junto con las técnicas de incremento de su de volumen, aprendidas en videotutoriales anteriores, nos ofrecerán un aspecto hermoso y apetecible para esta característica facial.<br /><br />Usaremos<strong> capas de relleno y los ajustes de color y saturación</strong> para modificar, gracias a las opciones de fusión de capas y las máscaras, el color e intensidad de los labios.<br /><br />Jugaremos con varias opciones de fusión para conseguir aplicar esta técnica, incluso con tonos de color más oscuros, en los que necesitaremos refinar ligeramente varios pasos, volviendo a usar las posibilidades de copiado y niveles, para recuperar los atributos del brillo perdido en algunos procesos.<br /><br /><object width="600" height="365">
	<param name="allowfullscreen" value="true" />
	<param name="allowScriptAccess" value="never" />
	<param name="swliveconnect" value="false" />
	<param name="movie" value="http://www.youtube.com/v/JI6NEWhWjfk&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" />
	<embed src="http://www.youtube.com/v/JI6NEWhWjfk&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="never" swliveconnect="false" width="600" height="365"></embed>
</object><br /><br />Saludos.<p><a href="http://www.cristalab.com/tips/maquillaje-en-photoshop-con-capas-de-relleno-c109391l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=ot1vZYyTB9o:LDxchsE2Mwo:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=ot1vZYyTB9o:LDxchsE2Mwo:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/ot1vZYyTB9o" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Tue, 05 Feb 2013 16:13:24</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tips/maquillaje-en-photoshop-con-capas-de-relleno-c109391l/</feedburner:origLink></item>
	    <item>
    	    <title>Rigid Bodies y comandos Set Active y Passive en Maya</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/1Ie5XzCTp-c/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tips/rigid-bodies-y-comandos-set-active-y-passive-en-maya-c109483l/</guid>
	        <description><![CDATA[ En este videotutorial veremos las herramientas que nos ofrece el programa, para combinar la animación automática obtenida de los cálculos físicos que llevan a cabo los sistemas dinámicos de Rigid Bodies, con animación aplicada manualmente, incorporando Keyframes y controlando el momento en el que se asignará cada una d... ]]></description>

	        <dc:creator>arumadigital</dc:creator>
	        <category>3d</category>
	        <category>animacion</category>
	        <category>maya</category>
	        
            <content:encoded><![CDATA[  En este videotutorial veremos las herramientas que nos ofrece el programa, para combinar la animación automática obtenida de los cálculos físicos que llevan a cabo los sistemas dinámicos de Rigid Bodies, con animación aplicada manualmente, incorporando Keyframes y controlando el momento en el que se asignará cada una de estas opciones, usando los <a class="arti_link" href="http://www.cristalab.com/tags/maya/">comandos Set Active y Passive de Maya</a>.<br /><br />Realizaremos un entorno sencillo, con varios elementos dinámicos de <strong>Rigid Bodies activos y pasivos</strong> y ajustaremos los procesos físicos, usando el <strong>comando Set Passive</strong> para desactivar la animación dinámica del sistema y poder asignar fotogramas clave, e implementando el <strong>comando Set Active</strong>, bloquear la animación manual para devolver al sistema a su estado dinámico inicial.<br /><br /><object width="600" height="365">
	<param name="allowfullscreen" value="true" />
	<param name="allowScriptAccess" value="never" />
	<param name="swliveconnect" value="false" />
	<param name="movie" value="http://www.youtube.com/v/u8sfxsljtRE&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" />
	<embed src="http://www.youtube.com/v/u8sfxsljtRE&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="never" swliveconnect="false" width="600" height="365"></embed>
</object><br /><br />Saludos.<p><a href="http://www.cristalab.com/tips/rigid-bodies-y-comandos-set-active-y-passive-en-maya-c109483l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=1Ie5XzCTp-c:8VVcB7PWXVw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=1Ie5XzCTp-c:8VVcB7PWXVw:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/1Ie5XzCTp-c" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Mon, 04 Feb 2013 16:40:18</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tips/rigid-bodies-y-comandos-set-active-y-passive-en-maya-c109483l/</feedburner:origLink></item>
	    <item>
    	    <title>Crear un precarga con jQuery</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/6z3GLjr_WuQ/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tips/crear-un-precarga-con-jquery-c109514l/</guid>
	        <description><![CDATA[ En este tutorial veremos cómo hacer una precarga en jQuery donde se muestre un .gif de "loading" mientras se esté cargando toda la web, ya que algunas veces los proyectos tienen muchas peticiones al servidor y esto hace que tarde.<br />
<br />
Antes de comenzar con esto veremos unos conceptos que nos ayudará a entender... ]]></description>

	        <dc:creator>luisrodriguez</dc:creator>
	        <category>javascript</category>
	        <category>jquery</category>
	        
            <content:encoded><![CDATA[  En este tutorial veremos cómo hacer una <a class="arti_link" href="http://www.cristalab.com/tags/jquery/">precarga en jQuery</a> donde se muestre un .gif de &quot;loading&quot; mientras se esté cargando toda la web, ya que algunas veces los proyectos tienen muchas peticiones al servidor y esto hace que tarde.<br /><br />Antes de comenzar con esto veremos unos conceptos que nos ayudará a entender el pequeño script&#058;<ul><li><strong> $(document).ready</strong>: se activa cuando carga todo el DOM, incluso aunque las imágenes no terminen de cargar.<br /></li></ul><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-js">$&#40;document&#41;.ready&#40;function&#40;&#41; &#123;
 alert&#40;&quot;document cargo&quot;&#41;;
&#125;&#41;;</pre><ul><li> <strong>$(window).load</strong>: se activa cuando la página termine de cargar todas las peticiones.<br /></li></ul><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-js">$&#40;window&#41;.load&#40;function&#40;&#41; &#123;
 alert&#40;&quot;window cargo&quot;&#41;;
&#125;&#41;;</pre><br /><br />Ya con estos conceptos podemos comenzar a armar nuestro script. No se olviden de cargar antes jQuery.<br /><br /><p class="datos_bloque"><strong>C&oacute;digo :</strong></p>
<pre class="prettyprint lang-js">$&#40;document&#41;.ready&#40;function&#40;&#41;&#123;
&nbsp; &nbsp; &nbsp; &nbsp; //eliminamos el scroll de la pagina
&nbsp; &nbsp; &nbsp; &nbsp; $&#40;&quot;body&quot;&#41;.css&#40;&#123;&quot;overflow-y&quot;&#58;&quot;hidden&quot;&#125;&#41;;
&nbsp; &nbsp; &nbsp; &nbsp; //guardamos en una variable el alto del que tiene tu browser que no es lo mismo que del DOM
&nbsp; &nbsp; &nbsp; &nbsp; var alto=$&#40;window&#41;.height&#40;&#41;;
&nbsp; &nbsp; &nbsp; &nbsp; //agregamos en el body un div que sera que ocupe toda la pantalla y se muestra encima de todo
&nbsp; &nbsp; &nbsp; &nbsp; $&#40;&quot;body&quot;&#41;.append&#40;&quot;&lt; div id=&quot;pre-load-web&quot;&gt;&lt; div id=&quot;imagen-load&quot;&gt;&lt; img src=&quot;http&#58;//preloaders.net/preloaders/359/Filling%20circles.gif&quot; alt=&quot;&quot; /&gt;Cargando...&lt;/ div&gt;&lt;/ div&gt;&quot;&#41;; 
&nbsp; &nbsp; &nbsp; &nbsp; //le damos el alto 
&nbsp; &nbsp; &nbsp; &nbsp;$&#40;&quot;#pre-load-web&quot;&#41;.css&#40;&#123;height&#58;alto+&quot;px&quot;&#125;&#41;; 
&nbsp; &nbsp; &nbsp; &nbsp;//esta sera la capa que esta dento de la capa que muestra un gif 
&nbsp; &nbsp; &nbsp; &nbsp;$&#40;&quot;#imagen-load&quot;&#41;.css&#40;&#123;&quot;margin-top&quot;&#58;&#40;alto/2&#41;-30+&quot;px&quot;&#125;&#41;; 
&#125;&#41;&nbsp; &nbsp; &nbsp;
$&#40;window&#41;.load&#40;function&#40;&#41;&#123; 
$&#40;&quot;#pre-load-web&quot;&#41;.fadeOut&#40;1000,function&#40;&#41; &#123; //eliminamos la capa de precarga $&#40;this&#41;.remove&#40;&#41;;
//permitimos scroll 
$&#40;&quot;body&quot;&#41;.css&#40;&#123;&quot;overflow-y&quot;&#58;&quot;auto&quot;&#125;&#41;; &#125;&#41;; 
 
&#125;&#41;</pre><br /><br />[css:1:5688226aae]#pre-load-web &#123;width&#58;100%;position&#58;absolute;background&#58;#92def8;left&#58;0px;top&#58;0px;z-index&#58;100000&#125;<br />/*aqui centramos la imagen si coloco margin left -30 es por que la imagen mide 60 */<br />#pre-load-web #imagen-load&#123;left&#58;50%;margin-left&#58;-30px;position&#58;absolute&#125;[/css:1:5688226aae]<br /><br />Con este sencillo script ya pueden tener un precarga sin necesidad de un plugin.<br /><br /><a class="arti_link" href="http://www.luisrodriguez.pe/demos/jquery_preload.zip">descargar script de precarga</a><p><a href="http://www.cristalab.com/tips/crear-un-precarga-con-jquery-c109514l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=6z3GLjr_WuQ:EXQg5yyieEA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=6z3GLjr_WuQ:EXQg5yyieEA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/6z3GLjr_WuQ" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Fri, 01 Feb 2013 15:15:56</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tips/crear-un-precarga-con-jquery-c109514l/</feedburner:origLink></item>
	    <item>
    	    <title>La estrategia Netflix y "House of Cards": Televisión sin TV</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/2as5HOFpDqg/</link>
			<guid isPermaLink="false">http://www.cristalab.com/blog/la-estrategia-netflix-y-house-of-cards-television-sin-tv-c109521l/</guid>
	        <description><![CDATA[ ¿Recuerdan cuándo fue la última vez que vieron una serie de televisión completa desde un canal de televisión? Quizás viste algunos capítulos al aire de una serie que te gustó pero luego continuaste la serie bajando los capítulos, viéndolos en vivo, en un DVD o por streaming. <br /><br />
(foto tomada de flickr)<br />
Nuestras pref... ]]></description>

	        <dc:creator>Tifa^</dc:creator>
	        <category>netflix</category>
	        <category>marketing</category>
	        <category>video</category>
	        <category>2.0</category>
	        
            <content:encoded><![CDATA[  ¿Recuerdan cuándo fue la última vez que vieron una serie de televisión completa desde un canal de televisión? Quizás viste algunos capítulos al aire de una serie que te gustó pero luego continuaste la serie bajando los capítulos, viéndolos en vivo, en un DVD o por streaming. <br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://farm4.staticflickr.com/3214/2409519010_da19268aaf_z.jpg" border="0" /><br /><em>(foto tomada de <a class="arti_link" href="http://www.flickr.com/photos/rjs1322/2409519010/">flickr)</a></em></div><br />Nuestras preferencias cambiaron porque ya no somos los mismos de hace 10 años que nos programábamos a hora  específica para ver un programa en la tele. Con internet, ahora tenemos acceso casi a cualquier tipo de película, serie o documental, ya que este contenido está en línea de forma legal o ilegal y se ajusta a nuestras preferencias.<br /><br /><h2>El nuevo &quot;televidente&quot;</h2><br />Nosotros los usuarios valoramos muchísimo las series que nos gustan, sin embargo a veces es muy dificil llegar a una serie en particular que nos enganche y nos encante. Hay un gran grupo de personas que aún ven televisión en sus televisores, en canales por suscripción o antena, que siguen un horario, que esperan al otro día para ver otro capítulo y que ademas no les importa ver comerciales. Sin embargo (y creo que son ustedes los que me leen) hay otro gran número de personas que no tenemos un horario fijo para entretenimiento pero si tenemos múltiples dispositivos para consumo de contenido audiovisual, por ejemplo: teléfonos, computadores, tablets etc que nos ha llevado a adoptar nuevos tipos de consumo.<br /><br /><h2>¿Por qué usar Netflix?</h2><br />Nos encanta ver series y películas, por eso <a class="arti_link" href="http://www.netflix.com/">Netflix</a> es una de las plataformas de pago líderes en entretenimiento audiovisual, ya que nos permite ver un montón de series y películas, con/sin subtítulos, dobladas, en HD etc, gracias a su catálogo que se ajusta a las preferencias de lo que nos gusta ver. Uno de los valores más interesantes que ofrece netflix es eso, la posibilidad de rankear nuestras preferencias para que la plataforma nos brinde opciones.<br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://www.administradores.com.br/_resources/files/_modules/files/files_7391_201211191729401c0f.jpg" border="0" /></div><br />Netflix tiene un catálogo especial latinoamérica, sin embargo ha sido criticado por ser limitado, esto se debe a las restricciones de las licencias para nuestros paises hispanos, sin embargo si usted sabe inglés, puede usar un VPN para verlas en su idioma original con el catálogo original de Estados Unidos sin problemas. <strong>Otro punto importante es que estás siendo legal</strong>, ver netflix es legal y eso es algo muy importante para la industria, sin embargo no es tan caro como comprar una colección de DVD's original; la suscripción mensual de netflix<strong> sólo cuesta 7 dólares</strong> y lo ideal es que cada persona tenga su cuenta, sin embargo considero que cada cuenta puede ser usada por un grupo familiar, mediante un sólo dispositivo (para que no cree conflicto la cuenta). De esta manera puede haber un mayor ahorro y ser legal en la familia. Si son personas solitarias o no quieren comparti la cuenta, perfecto, pueden tener continuida[*] d personalizadas en las series y seguirlas desde cualquiera de tus dispositivos móviles.<br /><br /><h2>House Of Cards</h2><br />La semana pasada, fuimos invitados al lanzamiento de una serie para tv nueva cuya distribución será únicamente por Netflix: &quot;<strong>House of Cards</strong>&quot;. Estuve muy emocionada porque senti estar en el lugar indicado, &quot;yo tengo TV, pero no veo TV&quot;. <br /><br /><div style="text-align:center;"><img class="imgBlog" src="http://clabie.com/uploads/510c148c73281aa938000002_m.jpg" border="0" /></div><br />Al principio, House of cards parece una serie con trama de congresistas Estadounidenses tradicional, sin embargo a los pocos minutos, Frank (personaje principal protagonizado por Kevin Spacey) nos muestra su excelenta faceta de político corrupto, ambicioso y jugador sucio con un toque de humor negro encantador. La serie trae personajes muy inteligentes y bien planteados como periodistas y twitteros que influyen mucho en este drama inspirado en la política. El director de esta serie es David Fitcher (de <em>The Social Network</em>) experto en suspenso. <br /><br />Lo mejor de la serie es que hoy, 1 de Febrero liberaron <strong>toda la primera temporada</strong>, asi podemos disfrutarla toda de corrido si así queremos (y yo se que sí quieren).<br /><br />Sin hablar más aqui va el trailer:<br /><br /><object width="600" height="365">
	<param name="allowfullscreen" value="true" />
	<param name="allowScriptAccess" value="never" />
	<param name="swliveconnect" value="false" />
	<param name="movie" value="http://www.youtube.com/v/ULwUzF1q5w4&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" />
	<embed src="http://www.youtube.com/v/ULwUzF1q5w4&hl=en&fs=1&rel=0&color1=0xF98A43&color2=0xFFC661" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="never" swliveconnect="false" width="600" height="365"></embed>
</object><br /><br />Si les gusta, pueden probar 30 dias gratis del servicio en el sitio oficial <a class="arti_link" href="http://www.netflix.com">www.netflix.com</a> .<br /><br />¡Gracias por leer, hay muchas series de TV interesantes para ver!, Att. <a class="arti_link" href="https://twitter.com/tifis">@tifis </a><p><a href="http://www.cristalab.com/blog/la-estrategia-netflix-y-house-of-cards-television-sin-tv-c109521l/#enviar" title="Env&iacute;a tus comentarios de este art&iacute;lo"><img src="http://www.cristalab.com/images/general/enviar-comentario.png" alt="Enviar comentario" /></a></p> <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=2as5HOFpDqg:6zfsbh7iH9Y:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=2as5HOFpDqg:6zfsbh7iH9Y:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/2as5HOFpDqg" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Fri, 01 Feb 2013 11:29:41</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/blog/la-estrategia-netflix-y-house-of-cards-television-sin-tv-c109521l/</feedburner:origLink></item>
	    <item>
    	    <title>Tutorial de AMFPHP y Actionscript 3</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/l_9Jl7cuE5g/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tutoriales/tutorial-de-amfphp-y-actionscript-3-c274l/</guid>
	        <description><![CDATA[ AMFPHP es un famoso sistema del lado del servidor para usar Remoting en PHP en conexión con Flash. En este tutorial veremos cómo instalarlo y adaptarlo a Actionscript 3, Flash CS4 y Flex. ]]></description>

	        <dc:creator>bubudrc</dc:creator>
	        <category>tutorial</category>
	        
            <content:encoded><![CDATA[ AMFPHP es un famoso sistema del lado del servidor para usar Remoting en PHP en conexi&oacute;n con Flash. En este tutorial veremos c&oacute;mo instalarlo y adaptarlo a Actionscript 3, Flash CS4 y Flex. <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=l_9Jl7cuE5g:ZGLWaXqD6FU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=l_9Jl7cuE5g:ZGLWaXqD6FU:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/l_9Jl7cuE5g" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Sat, 05 Dec 2009 00:00:00</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tutoriales/tutorial-de-amfphp-y-actionscript-3-c274l/</feedburner:origLink></item>
	    <item>
    	    <title>Programación orientada a objetos en Visual Basic .NET</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/vW58udRu7ck/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tutoriales/programacion-orientada-a-objetos-en-visual-basic-.net-c273l/</guid>
	        <description><![CDATA[ Un completo manual de programación orientada a objetos en Visual Basic .NET, donde hablamos de herencia, encapsulación, polimorfismo, proyectos en VB.NET y todo lo que abarca el OOP en Visual Basic. ]]></description>

	        <dc:creator>Wyrm</dc:creator>
	        <category>tutorial</category>
	        
            <content:encoded><![CDATA[ Un completo manual de programaci&oacute;n orientada a objetos en Visual Basic .NET, donde hablamos de herencia, encapsulaci&oacute;n, polimorfismo, proyectos en VB.NET y todo lo que abarca el OOP en Visual Basic. <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=vW58udRu7ck:XEX7uXANcq0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=vW58udRu7ck:XEX7uXANcq0:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/vW58udRu7ck" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Mon, 14 Sep 2009 00:00:00</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tutoriales/programacion-orientada-a-objetos-en-visual-basic-.net-c273l/</feedburner:origLink></item>
	    <item>
    	    <title>Tutorial de Visual Basic .NET</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/GnQHiCRUFH8/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tutoriales/tutorial-de-visual-basic-.net-c272l/</guid>
	        <description><![CDATA[ En este tutorial básico crearemos una aplicación usando los Windows Forms de .NET y el lenguaje Visual Basic .NET. Todo usando el IDE Microsoft Visual Studio 2008 y Visual Basic 2008. ]]></description>

	        <dc:creator>Wyrm</dc:creator>
	        <category>tutorial</category>
	        
            <content:encoded><![CDATA[ En este tutorial b&aacute;sico crearemos una aplicaci&oacute;n usando los Windows Forms de .NET y el lenguaje Visual Basic .NET. Todo usando el IDE Microsoft Visual Studio 2008 y Visual Basic 2008. <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=GnQHiCRUFH8:rn2POocWP8k:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=GnQHiCRUFH8:rn2POocWP8k:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/GnQHiCRUFH8" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Tue, 01 Sep 2009 00:00:00</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tutoriales/tutorial-de-visual-basic-.net-c272l/</feedburner:origLink></item>
	    <item>
    	    <title>Tutorial de PHP y YAML</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/zoGQfoomyb8/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tutoriales/tutorial-de-php-y-yaml-c271l/</guid>
	        <description><![CDATA[ YAML es un formato de serialización de datos que nos permite crear archivos de variables fácilmente leíbles. En este tutorial usaremos YAML o YML para archivos de configuración en PHP. ]]></description>

	        <dc:creator>Duilio</dc:creator>
	        <category>tutorial</category>
	        
            <content:encoded><![CDATA[ YAML es un formato de serializaci&oacute;n de datos que nos permite crear archivos de variables f&aacute;cilmente le&iacute;bles. En este tutorial usaremos YAML o YML para archivos de configuraci&oacute;n en PHP. <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=zoGQfoomyb8:u05JSskbHOk:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=zoGQfoomyb8:u05JSskbHOk:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/zoGQfoomyb8" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Mon, 24 Aug 2009 00:00:00</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tutoriales/tutorial-de-php-y-yaml-c271l/</feedburner:origLink></item>
	    <item>
    	    <title>Efectos de sonido en FL Studio</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/dZ0PQg0y7Jc/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tutoriales/efectos-de-sonido-en-fl-studio-c268l/</guid>
	        <description><![CDATA[ Hay muchos tipos de efectos de sonido en FL Studio (antiguo Fruity Loops). En este tutorial veremos los efectos de audio Delay, Reeverb, Flanger, Phaser, Chorus, Compressor, Clipper, Fast Distortion y Vocoder. ]]></description>

	        <dc:creator>RattaMono</dc:creator>
	        <category>tutorial</category>
	        
            <content:encoded><![CDATA[ Hay muchos tipos de efectos de sonido en FL Studio (antiguo Fruity Loops). En este tutorial veremos los efectos de audio Delay, Reeverb, Flanger, Phaser, Chorus, Compressor, Clipper, Fast Distortion y Vocoder. <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=dZ0PQg0y7Jc:HguT4wmAceY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=dZ0PQg0y7Jc:HguT4wmAceY:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/dZ0PQg0y7Jc" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Mon, 10 Aug 2009 00:00:00</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tutoriales/efectos-de-sonido-en-fl-studio-c268l/</feedburner:origLink></item>
	    <item>
    	    <title>Coloreado de dibujos en Flash</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/5_aDF9qWd2k/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tutoriales/coloreado-de-dibujos-en-flash-c269l/</guid>
	        <description><![CDATA[ En este tutorial de coloreado digital, veremos el proceso de entintado de personajes y dibujos usando Adobe Flash como herramienta. ]]></description>

	        <dc:creator>Victor-Nael</dc:creator>
	        <category>tutorial</category>
	        
            <content:encoded><![CDATA[ En este tutorial de coloreado digital, veremos el proceso de entintado de personajes y dibujos usando Adobe Flash como herramienta. <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=5_aDF9qWd2k:BQfPsql8H4w:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=5_aDF9qWd2k:BQfPsql8H4w:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/5_aDF9qWd2k" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Mon, 10 Aug 2009 00:00:00</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tutoriales/coloreado-de-dibujos-en-flash-c269l/</feedburner:origLink></item>
	    <item>
    	    <title>Crear una base de datos en MySQL</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/I4K_FRtl8BE/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tutoriales/crear-una-base-de-datos-en-mysql-c270l/</guid>
	        <description><![CDATA[ En este tutorial veremos cómo crear una base de datos de MySQL, crear tablas y ejecutar comandos de MySQL con phpMyAdmin, sin necesidad de tener conocimientos extensos de SQL. ]]></description>

	        <dc:creator>Wyrm</dc:creator>
	        <category>tutorial</category>
	        
            <content:encoded><![CDATA[ En este tutorial veremos c&oacute;mo crear una base de datos de MySQL, crear tablas y ejecutar comandos de MySQL con phpMyAdmin, sin necesidad de tener conocimientos extensos de SQL. <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=I4K_FRtl8BE:ksBmKPfEj74:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=I4K_FRtl8BE:ksBmKPfEj74:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/I4K_FRtl8BE" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Mon, 10 Aug 2009 00:00:00</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tutoriales/crear-una-base-de-datos-en-mysql-c270l/</feedburner:origLink></item>
	    <item>
    	    <title>Transiciones de filtros en After Effects</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/yfGI2jWO5S0/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tutoriales/transiciones-de-filtros-en-after-effects-c267l/</guid>
	        <description><![CDATA[ Aprenderemos a usar transiciones de filtros en Adobe After Effects sobre animaciones complejas, composiciones anidadas y edición gráfica de las animaciones creadas.  ]]></description>

	        <dc:creator>elchininet</dc:creator>
	        <category>tutorial</category>
	        
            <content:encoded><![CDATA[ Aprenderemos a usar transiciones de filtros en Adobe After Effects sobre animaciones complejas, composiciones anidadas y edici&oacute;n gr&aacute;fica de las animaciones creadas.  <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=yfGI2jWO5S0:ea7sPSSJAkM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=yfGI2jWO5S0:ea7sPSSJAkM:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/yfGI2jWO5S0" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Wed, 29 Jul 2009 00:00:00</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tutoriales/transiciones-de-filtros-en-after-effects-c267l/</feedburner:origLink></item>
	    <item>
    	    <title>Diseño web para iPhone</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/ACRJlLvjDW4/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tutoriales/diseno-web-para-iphone-c266l/</guid>
	        <description><![CDATA[ El diseño web en iPhone requiere conocimientos de HTML 5, CSS y Javascript especial para usar todo el poder de Safari Mobile. En este tutorial hablamos de cómo crear sitios web optimizados para iPhone y navegadores Webkit como Android. ]]></description>

	        <dc:creator>eparada</dc:creator>
	        <category>tutorial</category>
	        
            <content:encoded><![CDATA[ El dise&ntilde;o web en iPhone requiere conocimientos de HTML 5, CSS y Javascript especial para usar todo el poder de Safari Mobile. En este tutorial hablamos de c&oacute;mo crear sitios web optimizados para iPhone y navegadores Webkit como Android. <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=ACRJlLvjDW4:tPDjSFj0k14:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=ACRJlLvjDW4:tPDjSFj0k14:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/ACRJlLvjDW4" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Wed, 29 Jul 2009 00:00:00</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tutoriales/diseno-web-para-iphone-c266l/</feedburner:origLink></item>
	    <item>
    	    <title>Deformar bitmaps con el metodo drawTriangles de Actionscript 3</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/_t-7tPBBxzE/</link>
			<guid isPermaLink="false">http://www.cristalab.com/tutoriales/deformar-bitmaps-con-el-metodo-drawtriangles-de-actionscript-3-c262l/</guid>
	        <description><![CDATA[ El método drawTriangles() de Actionscript 3 es útil al crear figuras tridimensionales a partir de triángulos, para modificar la apariencia de un bitmap  y en el mas sencillo de los casos dibujar una figura vectorizada. Lo que puede llevar a su uso incluso en el desarrollo de motores 3D vectoriales en Flash. ]]></description>

	        <dc:creator>M@U</dc:creator>
	        <category>tutorial</category>
	        
            <content:encoded><![CDATA[ El m&eacute;todo drawTriangles() de Actionscript 3 es &uacute;til al crear figuras tridimensionales a partir de tri&aacute;ngulos, para modificar la apariencia de un bitmap  y en el mas sencillo de los casos dibujar una figura vectorizada. Lo que puede llevar a su uso incluso en el desarrollo de motores 3D vectoriales en Flash. <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=_t-7tPBBxzE:FvHCCI4FaOg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=_t-7tPBBxzE:FvHCCI4FaOg:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/_t-7tPBBxzE" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Sun, 08 Feb 2009 00:00:00</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/tutoriales/deformar-bitmaps-con-el-metodo-drawtriangles-de-actionscript-3-c262l/</feedburner:origLink></item>
	    <item>
    	    <title>Un dia normal del foro</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/1Rlh8N4Tno4/69</link>
			<guid isPermaLink="false">http://www.cristalab.com/comic/clab/69</guid>
	        <description><![CDATA[ "Hordie", esa bella combinación de usuarios nuevos que llega en estampida en las vacaciones, vuelve al hogar, los foros de Clab. ]]></description>

	        <dc:creator />
	        <category>comic</category>
	        
            <content:encoded><![CDATA[ &quot;Hordie&quot;, esa bella combinaci&oacute;n de usuarios nuevos que llega en estampida en las vacaciones, vuelve al hogar, los foros de Clab. <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=1Rlh8N4Tno4:5ARhIAPRPzc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=1Rlh8N4Tno4:5ARhIAPRPzc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/1Rlh8N4Tno4" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Tue, 20 Nov 2007 00:00:00</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/comic/clab/69</feedburner:origLink></item>
	    <item>
    	    <title>Clab News</title>
        	<link>http://feeds.cristalab.com/~r/clab/~3/d-KrHJyfCZE/68</link>
			<guid isPermaLink="false">http://www.cristalab.com/comic/clab/68</guid>
	        <description><![CDATA[ De la mano de blackdragon (Idea original) y la100rra (Arte) llega a  ustedes la tercera edición (Y primera en el comic) del periódico Clab News. ]]></description>

	        <dc:creator />
	        <category>comic</category>
	        
            <content:encoded><![CDATA[ De la mano de blackdragon (Idea original) y la100rra (Arte) llega a  ustedes la tercera edici&oacute;n (Y primera en el comic) del peri&oacute;dico Clab News. <div class="feedflare">
<a href="http://feeds.cristalab.com/~ff/clab?a=d-KrHJyfCZE:ofpguyFuh-c:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/clab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.cristalab.com/~ff/clab?a=d-KrHJyfCZE:ofpguyFuh-c:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/clab?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/clab/~4/d-KrHJyfCZE" height="1" width="1"/>]]></content:encoded>
	        <pubDate>Mon, 31 Jul 2006 00:00:00</pubDate>
	    <feedburner:origLink>http://www.cristalab.com/comic/clab/68</feedburner:origLink></item>
	</channel>
</rss>
