<?xml version="1.0" encoding="iso-8859-1" ?><!-- generator="www.theblabla.com" --><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" ><channel><title>Blog Theblabla.com - Diseño y programacion web</title><link>http://www.theblabla.com/blog.php</link><language>es-es</language><description>Diseño y programacion por ordenador, Theblabla Blog</description><copyright>Copyright 2007</copyright><pubDate>Wed, 20 Aug 2008 14:01:56 GMT</pubDate><generator>http://www.theblabla.com</generator><item><title><![CDATA[Publicando un articulo con el m&oacute;vil]]></title><guid isPermaLink="true">http://www.theblabla.com/verarticulo.php?id=8</guid><link><![CDATA[ http://www.theblabla.com/verarticulo.php?id=8]]></link><pubDate><![CDATA[Wed, 30 Jan 2008 00:00:00 GMT]]></pubDate><description><![CDATA[Realmente es un capricho, que dudo se repita a menudo porque a&uacute;n activando el texto predictivo en un sonyericsson k530i es un $fsgs. Quiz&aacute; con la ngage me atreva B-)<br /> theblabla<br />Publicado en la categoría: <a href='http://www.theblabla.com/vercategoria.php?id=1'>3</a>]]></description></item><item><title><![CDATA[Ya tengo OS X en mi AMD 64]]></title><guid isPermaLink="true">http://www.theblabla.com/verarticulo.php?id=7</guid><link><![CDATA[ http://www.theblabla.com/verarticulo.php?id=7]]></link><pubDate><![CDATA[Thu, 20 Dec 2007 00:00:00 GMT]]></pubDate><description><![CDATA[Pues despu&eacute;s de probar un par de veces la instalaci&oacute;n, ya tengo mi hackintosh funcionando 100%. Quiero decir que funciona perfectamente aunque no es el sistema operativo que m&aacute;s utilizo.<br />
<br />
A&uacute;n sabiendo que abunda informaci&oacute;n sobre este tema, os contar&eacute; mi experiencia con la instalaci&oacute;n de este sistema operativo. El DVD utilizado en la instalaci&oacute;n es:<br />
<br />
AMD 10.4.10 by tubgirl (bittorrent, emule, P2P)<br />
<br />
[b]No est&aacute; garantizado el funcionamiento de este sistema operativo en todos los ordenadores ya sean de sobremesa o port&aacute;tiles. La raz&oacute;n es que no hay soporte para todo el hardware o simplemente no es compatible.[/b]<br />
<br />
[b]Tendr&aacute;s m&aacute;s posibilidades de que funcione si consigues que tu ordenador tenga el hardware igual a un Mac. La mayor&iacute;a de las Geforce y ATI tienen soporte ya sea con el DVD de instalaci&oacute;n o los KEXT que circulan por Inet.[/b]<br />
<br />
No obstante si eres programador o ya estas familiarizado con Unix, linux o como quieras llamarlo, te ser&aacute; m&aacute;s facil configurarlo. Con lo poco que se de linux solo puedo deciros que me parecen muy similares.<br />
<br />
[b]Introducci&oacute;n[/b]<br />
Disponer de un disco duro para realizar pruebas de instalaci&oacute;n y probablemente para dejar el sistema de forma definitiva, nos vendr&aacute; muy bien. En caso contrario deberemos crear particiones en nuestro HD con el riesgo de p&eacute;rdida de datos que puede surgir de una mala utilizaci&oacute;n del Administrador de discos duros o Soft utilizado para ello.<br />
<br />
[b]Virtual VMware[/b]<br />
Comenc&eacute; desde M$ XP, instalando Virtual VMware, este programa permite crear equipos o m&aacute;quinas virtuales en tu propio PC. <br />
Asignamos el disco duro a nuestra m&aacute;quina virtual (VM) y procedemos a instalar el DVD.<br />
Puede que te funcione arrancando desde el DVD sin necesidad de utilizar Virtual VM, pero no fu&eacute; mi caso, si est&aacute;s seguro de c&oacute;mo hacerlo puedes probar y ver qu&eacute; pasa. Creo recordar que me aparec&iacute;a un s&iacute;mbolo de &quot;prohibido&quot; y ah&iacute; se quedaba.<br />
<br />
Una vez finalizada la instalaci&oacute;n pide reiniciar el equipo, es cuando ya tendremos el sistema operativo instalado en el HD. A partir de aqu&iacute; terminamos con Virtual VM, cerramos la VM, cerramos el programa y reiniciamos nuestro PC.<br />
<br />
Si no tienes un &quot;Gestor de Arranque&quot; tendr&aacute;s que asignar en el men&uacute; de la BIOS el disco duro desde donde quieres que &quot;tire&quot; el arranque.<br />
<br />
La mejor comunidad, p&aacute;gina que he encontrado con info sobre todo esto:<br />
<br />
[url=http://www.applesana.com/]www.applesana.com[/url]<br /> theblabla<br />Publicado en la categoría: <a href='http://www.theblabla.com/vercategoria.php?id=1'>4</a>]]></description></item><item><title><![CDATA[NEW (Ninguna Empresa sin Web)]]></title><guid isPermaLink="true">http://www.theblabla.com/verarticulo.php?id=5</guid><link><![CDATA[ http://www.theblabla.com/verarticulo.php?id=5]]></link><pubDate><![CDATA[Fri, 28 Sep 2007 00:00:00 GMT]]></pubDate><description><![CDATA[De camino al curro oigo por la radio que RED.ES, con el fin de promover que todas las empresas (PYMES menores de 250 trabajadores) tengan su propia p&aacute;gina web. Pone a la disposici&oacute;n de &eacute;stas [b]una[/b] jornada de formaci&oacute;n para crear tu propia p&aacute;gina, [b]desde[/b] 65 €.<br />
<br />
<br />
El [b]Paquete b&aacute;sico (por a&ntilde;o)[/b] cuenta con:<br />
<br />
[em]&middot;Registro y mantenimiento de un nombre de dominio “.es” .<br />
<br />
&middot;Herramienta de creaci&oacute;n de web de 3 p&aacute;ginas. Esta herramienta le permitir&aacute; crear de forma facil y rapida un sitio Web donde su empresa podr&aacute; darse a conocer en el marco de Internet.<br />
<br />
&middot;10 cuentas de correo que le permitir&aacute;n establecer un canal de comunicaci&oacute;n con proveedores y clientes.<br />
<br />
&middot;Acceso por Webmail y filtro Antispam.<br />
<br />
&middot;Espacio FTP con una capacidad de 100 MB, para alojar sus datos.[/em]<br />
<br />
<br />
[bb]Realmente el precio est&aacute; muy ajustado, pero...[/bb]<br />
<br />
&iquest;Incluye el dise&ntilde;o?<br />
No, el usuario tiene que crearse su propio dise&ntilde;o, con lo que queda comprometido a realizar un churro de HTML si no tiene conocimientos. No obstante facilitan una herramienta (no especificada) para crear el dise&ntilde;o.<br />
<br />
Dominio y alojamiento.<br />
El servicio no es nada del otro mundo, no tiene base de datos, no tiene lenguaje de servidor, no tiene un &quot;Panel de Gestion&quot; y el espacio para una web de 3 p&aacute;ginas es de 100 Mb. <br />
&iquest;Pero que usuario iniciado va a ponerse a llenar una web de 3 p&aacute;g. con 100 MB? (me recuerda a mis inicios poniendo fotos de casi 1 Mb).<br />
<br />
<br />
Creo que la idea aunque bienintencionada, deja mucho que desear a los que desarrollamos paginas web. M&aacute;s bien nos deja por los suelos [triste].<br />
<br />
<br />
[bb]Si no quieres dejarte mucho dinero y tener tu presencia en internet, te propongo lo siguiente:[/bb]<br />
<br />
Cualquier empresa decente que preste servicios de dominios y hosting suele incluir en su paquete distintas posibilidades Open Source.<br />
<br />
En este caso voy a describir la empresa que aloja mi web. Y las opciones  que me ofrecen:<br />
<br />
Hospedajeydominios.com ofrece un servicio de alojamiento y registro de dominios del tipo que quieras (es, com, org, net, etc.). El plan b&aacute;sico tiene un costo aproximado de 60€ anuales.<br />
<br />
Por este precio disponemos de lo t&iacute;pico (BBDD, e-mail, subdominios, etc), pero adem&aacute;s tenemos [em]Installatron incluido en todos los planes.[/em]<br />
<br />
Visita las  [url=http://www.hospedajeydominios.com/mambo/alojamiento_web.html]caracter&iacute;sticas[/url] que ofrece hospedajeydominios.com y si no tienes ni idea de programaci&oacute;n web y quieres ahorrar lo m&aacute;ximo, estas aplicaciones Open source son para t&iacute;.<br />
<br />
Si por el contrario puedes gastar [em]algo[/em] m&aacute;s, no dudes en contratar mis servicios [muyfeliz].<br />
<br />
[url=http://www.red.es]RED.ES[/url]<br />
<br />
Saludos.<br /> theblabla<br />Publicado en la categoría: <a href='http://www.theblabla.com/vercategoria.php?id=1'>3</a>]]></description></item><item><title><![CDATA[Captura de pantalla curiosa]]></title><guid isPermaLink="true">http://www.theblabla.com/verarticulo.php?id=4</guid><link><![CDATA[ http://www.theblabla.com/verarticulo.php?id=4]]></link><pubDate><![CDATA[Mon, 10 Sep 2007 00:00:00 GMT]]></pubDate><description><![CDATA[Navegando por la web (de esa manera que vas casi haciendo clicks al azar), me topo con una famosa b&uacute;squeda realizada en un famoso buscador. No es ni m&aacute;s ni menos que lo que teneis a continuaci&oacute;n.<br />
<br />
[img=img/varios/pantallazo1.png]Curioso pantallazo[/img]<br />
<br />
&iquest;Qui&eacute;n habr&aacute; sido el creador de dicha b&uacute;squeda en dicha p&aacute;gina?<br />
<br />
Ah&iacute; la teneis para que vosostros mismos la evalu&eacute;is.<br />
<br />
Cualquier comentario con el nombre de dicha web o v&iacute;nculo hacia ella ser&aacute; eliminado.<br />
<br />
Pd: Un saludo y mi apoyo (aunque solo sea moral) a las bit&aacute;coras:<br />
<br />
[url=http://www.alasbarricadas.org]http://www.alasbarricadas.org[/url]<br />
<br />
[url=http://www.merodeando.com/]http://www.merodeando.com[/url]<br /> theblabla<br />Publicado en la categoría: <a href='http://www.theblabla.com/vercategoria.php?id=1'>3</a>]]></description></item><item><title><![CDATA[Validando XHTML 1.1 con el MIME Type adecuado]]></title><guid isPermaLink="true">http://www.theblabla.com/verarticulo.php?id=2</guid><link><![CDATA[ http://www.theblabla.com/verarticulo.php?id=2]]></link><pubDate><![CDATA[Wed, 29 Aug 2007 00:00:00 GMT]]></pubDate><description><![CDATA[Pues perfilando detalles de la web, me he topado con el com&uacute;n mensaje de error por no enviar correctamente el MYME Type al navegador del usuario o en este caso al validador del [url=http://www.w3c.es/]w3c[/url].<br />
<br />
Si desconoces el error del que hablo puedes hacer una prueba creando un archivo php con la cabecera en formato XML y comprobar que Firefox abre correctamente pero iE no lo hace:<br />
<br />
Archivo test.php<br />
[code]&lt;?php<br />
header(&quot;Content-Type: application/xhtml+xml; charset=utf-8&quot;);<br />
?&gt;<br />
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.1//EN&quot; &quot;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd&quot;&gt;<br />
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xml:lang=&quot;es&quot;&gt;<br />
&lt;head&gt;<br />
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;application/xhtml+xml; charset=utf-8&quot; /&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br />
[/code]<br />
<br />
Y el mensaje de la validaci&oacute;n si ponemos [em]text/html[/em].<br />
<br />
[img=img/validacionXHTML/error.gif]The document is being served with the text/html Mime Type which is not a registered media type for the XHTML 1.1 Document Type.[/img]<br />
<br />
Hasta donde he podido comprobar, la gran mayor&iacute;a de navegadores soporta este MIME, pero resulta que iE (5.5, 6.0 y 7) siguiendo su din&aacute;mica, no lo acepta y por consiguiente muestra una ventana de di&aacute;logo para descargar el archivo. <br />
<br />
Como buenos angelitos que somos y tras haber intentado promover FF a todas nuestras amistades y familiares sin conseguir mucho efecto en ellos, nos vemos en la obligaci&oacute;n de facilitar un MYME Type para el dichoso iE.<br />
<br />
No os apureis, lo he puesto f&aacute;cil, incluso ahorarr&aacute;s lineas de c&oacute;digo. La cuesti&oacute;n es bastante simple: con una condici&oacute;n lo tenemos todo.<br />
<br />
C&oacute;digo para el archivo setDoc.php<br />
[code]&lt;?<br />
$xhtmlCSS=&quot;&quot;;<br />
$linkCSS=&quot;&quot;;<br />
<br />
foreach($estilosCSS as $estilo){<br />
	$xhtmlCSS .= &quot;&lt;?xml-stylesheet href='$estilo' media='screen' type='text/css'?&gt;\n&quot;;<br />
	$linkCSS .= &quot;&lt;link href='$estilo' rel='stylesheet' type='text/css' /&gt;\n&quot;;<br />
}<br />
$xhtml_1_1=&quot;&lt;?xml version='1.0' encoding='utf-8'?&gt;\n&quot;.$xhtmlCSS.&quot;&lt;!DOCTYPE html PUBLIC \&quot;-//W3C//DTD XHTML 1.1//EN\&quot; \&quot;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd\&quot;&gt;\n&lt;html xmlns=\&quot;http://www.w3.org/1999/xhtml\&quot; xml:lang=\&quot;es\&quot;&gt;\n&lt;head&gt;\n&lt;meta http-equiv=\&quot;Content-Type\&quot; content=\&quot;application/xhtml+xml; charset=utf-8\&quot; /&gt;&quot;;<br />
$xhtml_1=&quot;&lt;!DOCTYPE html PUBLIC \&quot;-//W3C//DTD XHTML 1.0 Strict//EN\&quot; \&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\&quot;&gt;\n&lt;html xmlns=\&quot;http://www.w3.org/1999/xhtml\&quot;&gt;\n&lt;head&gt;\n&lt;meta http-equiv=\&quot;Content-Type\&quot; content=\&quot;text/html; charset=utf-8\&quot; /&gt;&quot;;<br />
<br />
if (stristr($_SERVER['HTTP_ACCEPT'], &quot;application/xhtml+xml&quot;) || stristr($_SERVER[&quot;HTTP_USER_AGENT&quot;],&quot;W3C_Validator&quot;) || stristr($_SERVER[&quot;HTTP_USER_AGENT&quot;],&quot;W3C_CSS_Validator&quot;) || stristr($_SERVER[&quot;HTTP_USER_AGENT&quot;],&quot;WDG_Validator&quot;)){	<br />
	header(&quot;Content-Type: application/xhtml+xml; charset=utf-8&quot;);<br />
	$salida=$xhtml_1_1;	<br />
}else{ <br />
	header(&quot;Content-Type: text/html; charset=utf-8&quot;);<br />
	$salida=$xhtml_1.$linkCSS; <br />
}<br />
echo $salida;<br />
?&gt;[/code]<br />
<br />
&iexcl;Ten en cuenta que ya esta declarada la etiqueta &lt;head&gt;!, por lo tanto el archivo que presentaremos al usuario, tendr&aacute; las siguientes caracter&iacute;sticas:<br />
-Un array con la ruta de los archivos CSS que necesitamos.<br />
-Incluimos el archivo setDoc.php (y que haga el trabajo sucio)<br />
<br />
C&oacute;digo para index.php<br />
[code]&lt;?php $estilosCSS = array(&quot;css/estilo.css&quot;, &quot;css/estiloBlog.css&quot;); require(&quot;setDoc.php&quot;);  ?&gt;<br />
&lt;title&gt;www.theblabla.com - Blog&lt;/title&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
	&lt;div id=&quot;cuerpo&quot;&gt;<br />
		....<br />
	&lt;/div&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br />
[/code]<br />
<br />
Deducciones:<br />
<br />
-Pues que iE sigue siendo una $@!fsss.<br />
-El validador del w3c no se ve afectado ya que est&aacute; incluido en la condici&oacute;n de servir como XHTML 1.1 y se genera un c&oacute;digo limpio y correcto.<br />
-Si adem&aacute;s el contenido de la BBDD est&aacute; correctamente configurado para trabajar como utf-8, conseguiremos que nuestros visitantes, vean correctamente nuestro contenido.<br />
<br />
Hasta la pr&oacute;xima.<br /> theblabla<br />Publicado en la categoría: <a href='http://www.theblabla.com/vercategoria.php?id=1'>2</a>]]></description></item><item><title><![CDATA[Calendario Flash-PHP-MySQL]]></title><guid isPermaLink="true">http://www.theblabla.com/verarticulo.php?id=1</guid><link><![CDATA[ http://www.theblabla.com/verarticulo.php?id=1]]></link><pubDate><![CDATA[Thu, 23 Aug 2007 00:00:00 GMT]]></pubDate><description><![CDATA[Con el lanzamiento de la nueva web y para que tenga algo de contenido, comienzo el Blog con un tutorial de un sencillo calendario que marca los d&iacute;as en los que existe uno o varios registros almacenados en la BBDD.<br />
<br />
[img=img/calendario/calendario.jpg]Imagen de calendario Flash[/img]<br />
<br />
*Descarga el archivo y descompr&iacute;melo en una carpeta o servidor activo.<br />
[url=files/calendario.zip]Descargar calendario.rar[/url]<br />
<br />
<br />
<br />
[bb]Cap&iacute;tulos de este tutorial:[/bb]<br />
<br />
1. [url=#archivoSWF]El archivo calendario.swf[/url]<br />
<br />
2. [url=#archivoPHP]El archivo calendario.php[/url]<br />
<br />
3. [url=#archivoSQL]C&oacute;digo para generar la tabla necesaria[/url]<br />
    <br />
[ancla=archivoSWF]<br />
[bb]El archivo calendario.swf[/bb]<br />
<br />
Primero empezaremos con el archivo Flash, en este caso lo agrup&eacute; todo en un mismo &quot;frame&quot; y 3 capas con todo lo necesario.<br />
<br />
[img=img/calendario/capas.gif]Capas: AS, preloader, fondo[/img]<br />
<br />
Capa 1 o as: &uacute;nicamente contiene c&oacute;digo, necesario para la aplicaci&oacute;n. Puedes ver el c&oacute;digo seleccionando dicha capa y presionando F9.<br />
<br />
[img=img/calendario/preloader.gif]Capa preloader: oculta el calendario mientras carga los datos[/img]<br />
<br />
Capa 2 o preloader: realmente es un &quot;falso preloader&quot; que muestra una animaci&oacute;n cuando la aplicaci&oacute;n est&aacute; enviando/procesando los datos que necesita. Esta capa solo contiene un clip llamado &quot;loader_mc&quot; que oculta el contenido del calendario.<br />
<br />
[img=img/calendario/fondo.gif]Capa fondo: dias, mes, a&ntilde;o[/img]<br />
<br />
Capa 3 o fondo: aqu&iacute; esta toda la chicha del asunto, empiezo con los dos campos din&aacute;micos, uno para el mes (&quot;nombreMes_txt&quot;) y otro para el a&ntilde;o (&quot;anio_txt&quot;), por el momento este calendario solo es &quot;navegable&quot; mediante los meses as&iacute; que s&oacute;lo necesitamos dos botones (&quot;mesAtras_btn&quot;, &quot;mesAdelante_btn&quot;). Para los d&iacute;as se ha utilizado un movieclip duplicado manualmente o en entorno de desarrollo que va desde 01 hasta 37.<br />
<br />
&iquest;Por qu&eacute; va desde 01 hasta 37?<br />
Porque el mes no tiene por qu&eacute; empezar en clip 01, o siempre en el lunes. Por lo tanto necesito tener mas clips disponibles para terminar el mes correctamente.<br />
<br />
Como funciona el clip &quot;dia&quot; (clips 01-37)<br />
Es un contenedor con un campo de texto din&aacute;mico (&quot;nDia_txt&quot;) y un clip que se muestra si hay registros (&quot;activo_mc&quot;).<br />
<br />
Para tenerlo todo claro explicare el c&oacute;digo que utiliza Flash. No voy a entrar en detalles de como se generan los clips y lo b&aacute;sico del programa.<br />
<br />
C&oacute;digo ActionScript 2.0<br />
[code]<br />
stop();<br />
meses = new Array(&quot;ENERO&quot;, &quot;FEBRERO&quot;, &quot;MARZO&quot;, &quot;ABRIL&quot;, &quot;MAYO&quot;, &quot;JUNIO&quot;, &quot;JULIO&quot;, &quot;AGOSTO&quot;, &quot;SEPTIEMBRE&quot;, &quot;OCTUBRE&quot;, &quot;NOVIEMBRE&quot;, &quot;DICIEMBRE&quot;);<br />
var hoy:Date = new Date();<br />
if(_level0.date != undefined){<br />
	fechaU=_level0.date.split(&quot;-&quot;);<br />
	hoy.setMonth(fechaU[1]-1);<br />
}<br />
[/code]<br />
<br />
Genero un Array con el nombre de los meses en castellano. Defino la variable &quot;hoy&quot; como fecha y el d&iacute;a en el que estamos. El calendario es &quot;infinito&quot;, genera el mes y el d&iacute;a en el que se encuentra el usuario, a partir de ah&iacute;, por cada mes, solicita los datos necesarios a la BBDD.<br />
<br />
*Nota: la condici&oacute;n se refiere por si existe la variable &quot;date&quot;, si existe, toma el mes de dicha variable.<br />
<br />
C&oacute;digo ActionScript 2.0<br />
[code]<br />
function clearDay(){<br />
	loader_mc._visible=true;<br />
	for(i=1; i&gt;38; i++){<br />
		if(i&gt;10){indi=&quot;0&quot;+i;}else{indi=i;}<br />
		_root[indi]._visible=false;<br />
	}<br />
}<br />
[/code]<br />
<br />
Esta funci&oacute;n me sirve para resetear todos los d&iacute;as, unicamente muestra el &quot;preloader&quot; y oculta todos los clips &quot;d&iacute;a&quot;.<br />
<br />
C&oacute;digo ActionScript 2.0<br />
[code]<br />
function lastDayInMonth(year:Number, month:Number, date:Date):Number {<br />
	var nDate:Date = (!date) ? new Date(year, month, 31) : new Date(date.getFullYear(), date.getMonth(), 31);<br />
	return (nDate.getMonth() == month) ? 31 : 31-nDate.getDate();<br />
}<br />
function firstDayInWeek(anio, mes){<br />
	var diaUno:Date = new Date(anio, mes, 1);<br />
	return diaUno.getDay();<br />
}<br />
[/code]<br />
<br />
Funciones para saber el &uacute;ltimo d&iacute;a del mes en el que se encuentra el calendario y el d&iacute;a de la semana por el que empieza el mes. Estas funciones las puedes encontrar en www.cristalab.com<br />
<br />
C&oacute;digo ActionScript 2.0<br />
[code]<br />
datosMesR_lv = new LoadVars();<br />
datosMesR_lv.onLoad = function(success:Boolean) {<br />
	if(success){<br />
		datos = new Array();<br />
		[ancla=separadoresAS][b]datos=this.str.split(&quot;@@@&quot;);[/b]<br />
		for(i=1; i&lt;38; i++){<br />
			if(i&lt;10){ind=&quot;0&quot;+i;}else{ind=i;}<br />
			if(i&lt;primerDiaSemana || i-primerDiaSemana+1&gt;diasMes){<br />
				_root[ind]._visible=false;<br />
			}else{<br />
				_root[ind].activo_mc._visible=false;<br />
				_root[ind]._visible=true;<br />
				_root[ind].restoDia_mc.nDia_txt.text=i-primerDiaSemana+1;<br />
				for(d=0; d&lt;datos.length; d++){<br />
					cDias=new Array();<br />
					cDias=datos[d].split(&quot;##&quot;);<br />
					if(_root[ind].restoDia_mc.nDia_txt.text == cDias[1] ){<br />
						_root[ind].activo_mc._visible=true;<br />
						mesA=mes+1;<br />
						if(mesA&lt;10){mesA=&quot;0&quot;+mesA;}<br />
						_root[ind].focoDia_mc.mes=mesA;<br />
						_root[ind].focoDia_mc.anio=anio;<br />
						_root[ind].focoDia_mc.dia=_root[ind].restoDia_mc.nDia_txt.text;<br />
						_root[ind].focoDia_mc.onRelease=function(){<br />
							getURL(&quot;verdia.php?date=&quot;+this.anio+&quot;-&quot;+this.mes+&quot;-&quot;+this.dia);<br />
						}<br />
					}<br />
				}<br />
				<br />
			}<br />
		}<br />
		loader_mc._visible=false;<br />
	}else{	<br />
		nombreMes_txt.text=&quot;error php&quot;;<br />
	}<br />
}<br />
[/code]<br />
<br />
Definimos la variable que recibira los datos &quot;datosMesR_lv &quot; y si se reciben los datos con &eacute;xito, los procesamos:<br />
&middot;Creamos el array donde meteremos los resultados.<br />
&middot;Separamos los resultados [url=#separadoresPHP]cotejar con c&oacute;digo PHP[/url].<br />
&middot;Oculto los d&iacute;as anteriores y posteriores (los que el mes no tiene).<br />
&middot;Sino pertenece a la condici&oacute;n anterior los muestro y le doy los valores de n&uacute;mero del mes.<br />
&middot;Recorremos el array &quot;datos&quot; para mostrar la informaci&oacute;n de ese d&iacute;a.<br />
&middot;Al hacer click sobre un d&iacute;a que esta &quot;iluminado&quot; o &quot;marcado&quot; nos vincula a una p&aacute;gina din&aacute;mica que muestra los datos pertinentes seg&uacute;n la fecha enviada.<br />
<br />
[code]<br />
getURL(&quot;verdia.php?date=&quot;+this.anio+&quot;-&quot;+this.mes+&quot;-&quot;+this.dia);<br />
[/code]<br />
<br />
En este caso le env&iacute;o por la URL o m&eacute;todo GET la variable &quot;date&quot; que contiene la fecha sobre la que se mostrar&aacute; la informaci&oacute;n en la p&aacute;gina &quot;verdia.php&quot;.<br />
<br />
C&oacute;digo ActionScript 2.0<br />
[code]<br />
function generaMes(){<br />
    clearDay();<br />
    mes=hoy.getMonth();<br />
    anio = hoy.getFullYear();<br />
    diasMes=lastDayInMonth(anio, mes);<br />
    primerDiaSemana=firstDayInWeek(anio, mes);<br />
    if(primerDiaSemana==0){primerDiaSemana=7;}<br />
    nombreMes_txt.text=meses[mes];<br />
    anio_txt.text=anio;<br />
    datosMesS_lv = new LoadVars();<br />
    mesC=mes+1;<br />
    if(mesC&gt;10){mesC=&quot;0&quot;+mesC;}<br />
    datosMesS_lv.mes=mesC;<br />
    datosMesS_lv.anio=anio;<br />
    datosMesS_lv.toString();<br />
    datosMesS_lv.sendAndLoad(&quot;http://bla/bla/swf/calendario.php&quot;, datosMesR_lv, &quot;GET&quot;);<br />
}<br />
[/code]<br />
<br />
<br />
Funci&oacute;n &quot;generaMes&quot;, con esta funci&oacute;n preparamos los datos que se enviar&aacute;n a la p&aacute;gina encargada de darnos los registros existentes en ese mes.<br />
<br />
[code]<br />
generaMes();<br />
[/code]<br />
<br />
Esta linea hace que la funci&oacute;n se ejecute al cargarse la pel&iacute;cula en el navegador.<br />
<br />
C&oacute;digo ActionScript 2.0<br />
[code]<br />
/*--------------------------------------------------------------------*/<br />
mesAtras_btn.onRelease=function(){<br />
    mesActual=hoy.getMonth();<br />
    restaActual=mesActual-1;<br />
    hoy.setMonth(restaActual);<br />
    mes=hoy.getMonth();<br />
    generaMes();<br />
}<br />
<br />
mesAdelante_btn.onRelease=function(){<br />
    actualMes = hoy.getMonth();<br />
    sumaMes=actualMes+1;<br />
    hoy.setMonth(sumaMes);<br />
    mes=hoy.getMonth();<br />
    generaMes();<br />
}<br />
[/code]<br />
<br />
Finalmete las acciones de los botones son evidentes, preparan el mes para enviar una fecha que consulte los resgistros de ese mes.<br />
<br />
[ancla=archivoPHP]<br />
[bb]El archivo calendario.php[/bb]<br />
<br />
El archivo &quot;calendario.php&quot; lo que hace es preparar una cadena de caracteres o string con los resultados obtenidos de la consulta a la BBDD.<br />
<br />
C&oacute;digo PHP Archivo: calendario.php<br />
[code]<br />
&lt;?php<br />
require(&quot;tuArchivoDeConexionBBDD&quot;);<br />
$mes = $_GET[&quot;mes&quot;];<br />
$anio = $_GET[&quot;anio&quot;];<br />
$dato= $anio.&quot;-&quot;.$mes;<br />
$str=&quot;&amp;str=&quot;;<br />
[ancla=separadoresPHP][b]$separador=&quot;##&quot;;<br />
$separador1=&quot;@@@&quot;;[/b]<br />
$vacio=true;<br />
    $result=mysql_query(&quot;SELECT id, DATE_FORMAT(fecha, '%d') FROM articulos WHERE fecha LIKE '$dato%' ORDER BY id DESC&quot;, $c);<br />
    while($row = mysql_fetch_row($result)){<br />
        $id=$row[0];<br />
        $dia=$row[1];<br />
        $str.= $id.$separador.$dia.$separador1;<br />
        $vacio=false;<br />
    }<br />
if($vacio){<br />
	$str2 = $str.&quot;0##38&quot;;<br />
	echo $str2;<br />
}else{<br />
	$str2 = substr($str, 0, -3);<br />
	echo $str2;<br />
}<br />
?&gt;<br />
[/code]<br />
<br />
&middot;El archivo de conexi&oacute;n a la base de datos.<br />
&middot;Preparo la cadena de la consulta a la BBDD<br />
&middot;Defino los &quot;separadores&quot; [url=#separadoresAS]Cotejar con AS[/url]<br />
&middot;Envio la consulta y voy generando la cadena de salida<br />
Ejemplo:<br />
Al apuntar el navegador hacia &quot;calendario.php?mes=08&amp;anio=2007&quot;, recibo una cadena del tipo:<br />
<br />
Salida HTML<br />
[code]<br />
&amp;str=15##21@@@14##17<br />
[/code]<br />
<br />
Esto se traduce como &quot;el id 15 est&aacute; presente en el mes solicitado y el d&iacute;a al que se refiere es 21 @@@ el id 14 est&aacute; presente en el mes solicitado y se refiere al d&iacute;a 17&quot;.<br />
<br />
Si no hay ning&uacute;n resultado se mostraria la salida<br />
[code]<br />
&amp;str=0##38<br />
[/code]<br />
<br />
Ver cadena actual.<br />
[ancla=archivoSQL]<br />
[bb]C&oacute;digo SQL para generar la tabla &quot;articulos&quot; en la BBDD[/bb]<br />
<br />
C&oacute;digo SQL para tabla articulos<br />
[code]<br />
CREATE TABLE `articulos` (<br />
`id` int(11) NOT NULL auto_increment,<br />
`titulo` varchar(250) collate utf8_spanish_ci NOT NULL,<br />
`fecha` date NOT NULL,<br />
KEY `id` (`id`)<br />
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci AUTO_INCREMENT=3 ;<br />
<br />
INSERT INTO `articulos` (`id`, `titulo`, `fecha`) VALUES<br />
(1, 'Mi primer articulo', '2007-07-14'),<br />
(2, 'PRUEBA barras 2', '2007-07-19')<br />
[/code]<br />
No pretende ser el mejor calendario disponible en la web pero se puede personalizar f&aacute;cilmente y adaptar a cualquier web.<br />
<br />
[url=files/calendario.zip]Descargar calendario.rar[/url]<br />
<br />
[url=#cabecera]Ver calendario funcionando[/url]<br />
<br />
[url=swf/calendario.php?mes=08&amp;anio=2007]Ver string o cadena generada en la consulta[/url]<br />
<br />
Espero os sirva de utilidad, Saludos.<br />
<br /> theblabla<br />Publicado en la categoría: <a href='http://www.theblabla.com/vercategoria.php?id=0'>1</a>]]></description></item></channel></rss>