Cómo enviar un formulario con Ajax desde una ventana de información de un mapa de Google.

16 07 2009

En este artículo vamos a mostrar cómo enviar un formulario con Ajax, desde un mapa de Google Maps. Este formulario se muestra en una ventana de información de una marca de Google Maps y para enviarlo vamos a utilizar Xajax, cuyo uso ya hemos explicado en el Manual de DesarrolloWeb.com del framework Xajax .
Googlemap1
Antes de comenzar, también conviene decir que tenemos un Manual de creación de Mapas de Google, en el que se explican con detalle asuntos que damos por sabidos en este artículo, como la generación de marcas en mapas de Google.
Para empezar, crearemos una función que cargará un mapa de Google en el que al pulsar sobre el mapa, se muestre una marca con una ventana de información que contendrá el formulario.

function load() {
   if (GBrowserIsCompatible()) {
      var map = new GMap2(document.getElementById("map"));
      map.addControl(new GLargeMapControl());
      map.addControl(new GMapTypeControl());
      map.setMapType(G_NORMAL_MAP);
     map.setCenter(new GLatLng(30,0),2);
      punto=map.getCenter();
      zoom=map.getZoom();
      var marker = new GMarker(punto);
      GEvent.addListener(map, "click", function (overlay,punto){
   //formulario para la ventana de informacion del mapa
   var texto_formulario="<br /><form name=form_textarea>Escribe algo y pulsa enviar:<br><textarea cols=25 rows=3 name=texto></textarea><p /><input value=Enviar type=button onclick=xajax_enviar_textarea(document.form_textarea.texto.value) /> </form>";
   marker.setPoint(punto);
   map.addOverlay(marker);
   marker.openInfoWindowHtml("<span style='font-size: 8pt; font-family: verdana'>"+ texto_formulario + "</span>");
   });

}
}

El código para incluir el formulario en la ventana de información es el siguiente:

var texto_formulario="<br /><form name=form_textarea>Escribe algo y pulsa enviar:<br><textarea cols=25 rows=3 name=texto></textarea><p /><input value=Enviar type=button onclick=xajax_enviar_textarea(document.form_textarea.texto.value) /> </form>";
marker.openInfoWindowHtml("<span style='font-size: 8pt; font-family: verdana'>"+ texto_formulario + "</span>");

Finalmente, creamos una función que procese los datos enviados desde el formulario. En este ejemplo, simplemente se muestra dentro de un DIV el texto que se ha enviado.

function enviar_textarea($texto){
   $respuesta = new xajaxResponse('ISO-8859-1');
   $respuesta->addAssign("texto_mapa","innerHTML",$texto);
   return $respuesta;
}
//asociamos la función creada anteriormente al objeto xajax
$xajax->registerFunction("enviar_textarea");

A continuación mostramos el código completo del ejemplo.

<?
$raiz = "../";
require ($raiz . 'xajax/xajax.inc.php');
//instanciamos el objeto de la clase xajax
$xajax = new xajax();
$xajax->setCharEncoding('ISO-8859-1');
$xajax->decodeUTF8InputOn();

function enviar_textarea($texto){
   $respuesta = new xajaxResponse('ISO-8859-1');
   $respuesta->addAssign("texto_mapa","innerHTML",$texto);
   return $respuesta;
}

//asociamos la función creada anteriormente al objeto xajax
$xajax->registerFunction("enviar_textarea");

//El objeto xajax tiene que procesar cualquier petición
$xajax->processRequests();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml">
<head>
<?
$xajax->printJavascript($raiz . "xajax/");
?>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=ISO-8859-1">
<title>Mapa de Google</title>
<script src="http://maps.google.com/maps?file=api&v=2&key=AQUI-TU-CLAVE-GOOGLE-MAPS" type="text/javascript">
</script>
<script type="text/javascript">
   function load() {
      if (GBrowserIsCompatible()) {
         var map = new GMap2(document.getElementById("map"));
         map.addControl(new GLargeMapControl());
         map.addControl(new GMapTypeControl());
         map.setMapType(G_NORMAL_MAP);
         map.setCenter(new GLatLng(30,0),2);
         punto=map.getCenter();
         zoom=map.getZoom();
         var marker = new GMarker(punto);
         GEvent.addListener(map, "click", function (overlay,punto){
            //formulario para la ventana de informacion del mapa
            var texto_formulario="<br /><form name=form_textarea>Escribe algo y pulsa enviar:<br><textarea cols=25 rows=3 name=texto></textarea><p /><input value=Enviar type=button onclick=xajax_enviar_textarea(document.form_textarea.texto.value) /></form>";
            marker.setPoint(punto);
            map.addOverlay(marker);
            marker.openInfoWindowHtml("<span style='font-size: 8pt; font-family: verdana'>"+ texto_formulario + "</span>");

         });

      }
   }

   window.onload=load;
</script>
<style type="text/css">
   html,body{
      margin:0px; height:100%;
   }
</style>
</head>

<body>
   <div style="margin: 10px 10px 10px 10px;"><strong>Hacer clic en el mapa:</strong></div>
   <?//mostrar el mapa?>
   <div id="map" style="height: 400px; width: 600px; margin: 10px 10px 10px 10px;"></div>
   <p>
   <div style="margin: 10px 10px 10px 10px;"><strong>Texto enviado desde el mapa:</strong></div>
   <?//mostrar el texto enviado desde el mapa?>
   <div id="texto_mapa" style="margin: 10px 10px 10px 10px;"></div>
</div>
</body>
</html>




Las mujeres no están hechas para el sexo casual

16 07 2009

Lo dicen los resultados de un sondeo publicado por la revista Human Nature: en el amor de una sola noche ellos la pasan bárbaro y ellas no.

Por: Greta Von Batja

Es siempre muy alentador cuando algunas cosas que sabemos desde siempre, porque “son así”, de repente resultan confirmadas científicamente. No sé, será que nos sentimos más inteligentes que de costumbre o que sospechamos que los científicos son menos inteligentes de lo que parecen. La cosa es que las mujeres no disfrutan tanto como los hombres el sexo de una sola noche y está corroborado científicamente.

Salió publicado en la revista Human Nature y es una investigación de la profesora Anne Campbell de la Durham University. Sin embargo, no deja de parecer una obviedad, el sentido común nos indica que eso es así. Lo que no sabemos es por qué. ¿Por qué las mujeres disfrutan menos que los hombres del sexo casual?

1743 hombres y mujeres respondieron el cuestionario y estos son los resultados: el 80 por ciento de los hombres dijo sentirse muy bien después de tener sexo casual, asegura haber obtenido gran satisfacción sexual y lo asocia a una sensación de bienestar. Comparado a ese 80 por ciento, sólo el 50 por ciento de las mujeres se sintió en condiciones de dar la misma respuesta.

Mientras los hombres celebran su comportamiento y están más que dispuestos a dejar saber a todos sus conocidos que se acostaron con tal o cual mujer (sobre todo si está muy buena), las mujeres frecuentemente sienten haber sido usadas y prefieren mantener el desliz en secreto.

Para Campbell el origen de la discordia femenina está en nuestras antepasadas. Para ellas no era una conducta ventajosa tener sexo casual, pues si así hubiera sido aún las mujeres de la actualidad lo disfrutarían. Era cuestión de supervivencia encontrar un macho capaz de permanecer junto a la prole. La cosa es que, dice Campbell, lo que molesta a las mujeres en la actualidad no es la brevedad de la relación, sino el hecho de no sentirse realmente apreciadas por los hombres.

Ahora, lo que Campbell no termina de entender es por qué las mujeres de todos modos participan de estos encuentros informales, si no les gusta. Lo único que se le ocurre es echarle la culpa a los niveles hormonales y a la fase ovulatoria. En español que entendemos todos: calentura. Dice que las mujeres lo hacen, aunque no les gusta, porque están excitadas.

Y ahora, yo me pregunto ¿y el otro 50 por ciento de las mujeres que sí disfruta del sexo casual no representan un número significativo? ¿no será que las que no disfrutan de una noche de sexo son las mismas que no disfrutan del sexo en general? En fin, la ciencia llega a conclusiones que el corazón no comprende.





Como pedir perdon

16 07 2009

Muchas veces tendras q pedir perdon, pero no siempre es facil decir realmente lo que siente y lo que quiere, por eso aqui va unas ideas….

He aprendido….que nadie
es perfecto

hasta que no te enamoras.

He aprendido que….la
vida es dura

pero yo lo soy más!!

He aprendido que….las
oportunidades no se pierden nunca

las que tu dejas
marchar…las aprovecha otro.

He aprendido que….cuando
siembras rencor y amargura

la felicidad se va a otra
parte.

He aprendido…que
necesitaría usar siempre palabras buenas…

porque mañana quizás se
tienen que tragar.

He aprendido…que una
sonrisa es un modo económico

para mejorar tu aspecto.

He aprendido…que no
puedo elegir como me siento…

pero siempre puedo hacer
algo.

He aprendido que…cuando
tu hijo recién nacido

tiene tu dedo en su
puñito…

te tiene enganchado
a la vida.

He aprendido que…todos
quieren vivir en la cima de la montaña…

pero toda la felicidad
pasa mientras la escalas.

He aprendido que…se
necesita gozar del viaje

y no pensar sólo en la
meta.

He aprendido que…es
mejor dar consejos sólo en dos circunstancias…

cuando son pedidos y
cuando de ello depende la vida.

He aprendido que…cuanto
menos tiempo derrocho…

más cosas hago.

Perdoname porque no te he dado el amor que te merecias,tu me has tratado
perfectamente y yo te e ignorado,tu me as dado kalor y yo lo he rechazado…
GRACIAS POR ESTA OPORTUNIDAD QUE ME VAS A DAR, te juro ke nunka mas te voy
a dejar no voy a kometer el fallo de ayer me e dado kuenta en estos dos dias
en ke kon tigo era feliz y por eso nunka mas te dejare.
TE QUIERO MUCHO.