PHP

Fancybox 2 Gallery by Ajax response

Llamamos una galeria desde la etiqueta HTML <a href='javascript:void(0);' id='' />galeria</a> usando Ajax generado por PHP

Codigo Javascript:

 
jQuery(function($)
{
        //al hacer click en determinada etiqueta ejecutamos la llamada ajax y con la respuesta
        //recogida generamos un slide show
        $('.gellery_from_link a').live('click', function()
	{
		var item = $(this); //get a href
 
		$.fancybox.showActivity();
 
		$.ajax({
			url: '?action=gallery&rand='+Math.random(), //rand for hotlink scripting
			data: 'gallery_id='+item.attr('id'), // get a href id for generate ajax result
			type: 'POST',
			dataType: 'json',
			cache: false,
			success: function(data)
			{
				$.fancybox(data,
				{
					type: 'image', //important
					autoScale: true,
					transitionIn:	'elastic',
					transitionOut:	'elastic',
					padding: 20,
				});
			}
		});
 
	});
});
 

Php > generando la respuesta ajax:

 
< ?php
 
//Hot Link script
function IsHotlink()
{
	$domain = explode("/",$_SERVER['PHP_SELF']);
	$isFromDomain = strstr($_SERVER['HTTP_REFERER'],$domain[2]);
	$isFromAjax = $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest';
	$isHotlink = !$isFromDomain && !$isFromAjax;
	return $isHotlink;
}
 
if( $_REQUEST['action'] == 'gallery' && !IsHotlink() )
{
	$dm->gallery_id = $_REQUEST['gallery_id']; //recogemos $_POST id de la galleria
 
	$dm->fdir = "gallery/".$dm->gallery_id."/"; //ruta hasta lacarpeta con id de la galeria
	$dm->fItems = read_dir($dm->fdir);
 
	$dm->items = array();
 
	foreach( $dm->fItems as $v => $k )
	{
		array_push($dm->items, array('href' => $dm->fdir.$dm->fItems[$v]) );
	}
 
	exit( json_encode( $dm->items ) ); //generamos la respuesta ajax y cerramos el documento.
 
/*
ejemplo de la respuesta:
[href: "/gallery/2011-11-25_1.JPG", href: "/gallery/2011-11-25_2.JPG"]
*/
}
?>
 

Sotaventobcn.com

sotaventobcn.com
Url: http://sotaventobcn.com/

Cliente: GrupoCostaEste
Información: Muntaner 240 3°2° 08021 BARCELONA (93) 414-63-62
Estado: Operativa (BETA)

Sotavento, situado en un emplazamiento ideal, enfrente de la playa y con unas privilegiadas vistas al mar, ofrece servicios de Restaurante, Bar, y Club.

Equipo:

  • Diseño: Alberto Ventosa Rodriguez
  • Supervisores: Arturo Segura & Alfonso Sostres
  • Seo / Comunity manager: Ivan Sanchez Lopez

Tecnología usada:

  • Css3
  • Html5
  • JavaScript (jQuery)
  • Ajax
  • Facebook Graph
  • Twitter Api
  • en base de WordPress

Lenguas: Español y Ingles

Homologación Legal

homologacionlegal.com
Url: http://homologacionlegal.com/

Cliente: Alex y Neftalí
Información: Ronda de General Mitre 116, bajos 08021 Barcelona - Tel: (+34) 93 112 08 50
Estado: Beta Testing

En CAHL – Centro de Asesoramiento y Homologación Legal le orientamos sobre los procedimientos que debe realizar para poder iniciar los trámites de homologación de todo tipo de diplomas, titulos y otros documentos.

Tecnología usada:

  • Css3
  • Html5
  • JavaScript (jQuery)
  • Ajax
  • Twitter
  • en base de WordPress

Lenguas: Ingles y Español

Cachitos Barcelona

cachitosbcn.com
Url: http://cachitosbcn.com/

Cliente: GrupoCostaEste
Información: Muntaner 240 3°2° 08021 BARCELONA (93) 414-63-62
Estado: Operativa

No hay amor más sincero que el amor a la comida "George Bernard Shaw" una frase con cual se identifica un nuevo local de centro de Barcelona. Es un local de tapas y copas totalmente distinto a los que proponen una oferta culinaria similar. El local dispone de varias plantas y una terraza.

Tecnología usada:

  • Css3
  • Html5
  • JavaScript (jQuery)
  • Ajax
  • Facebook Graph
  • en base de WordPress

Mis-Pegatinas

Mis-Pegatinas.es
Url: http://www.mis-pegatinas.es

Cliente: Tjalja Schaaf
Diseño: Sebastiaan van Kempen

Estado: Operativa

Tecnología usada:

  • Html / Css2
  • JavaScript
  • jQuery
  • Flash "Flex"
  • PHP "Wp3.0"
  • PayPal Integration TPV

Lenguas: Español y Ingles

SMILE AND MADRiD SMILES WITH YOU

SMILE AND MADRiD SMILES WITH YOU
Url: http://www.madridsonrie.com

Idea original: Ian Elola
Textos: Vanessa Lizarralde
Fotografias: Jaime Recoder
Diseño: Sebastiaan van Kempen

Estado: Operativa

Tecnología usada:

  • Full Flash builded with Flex (SDK v4.0.0.13875)
  • PHP 5
  • TPV (La Caixa)

Lenguas: Español y Ingles

TPV Pasarela Virtual ‘La Caixa’ (Cyber P@ck) parsear post usando cURL

Como podemos enviar variables atravez de PHP y cURL vía método POST?

Para empezar necesitamos activarlo, para saber si ya esta activado solo tenemos que crear archivo "info.php" y pegar este código

&lt; ?php phpinfo(); ?&gt;

abrimos las página en nuestro navegador y buscamos por "cURL" y miramos si pone "enabled"

nos dirigimos al directorio del PHP y buscamos por el archivo de php.ini

"php/php.ini", "php4/php.ini", "php5/php.ini" o "root/cig-bin/php.ini"
Normal mente dependiendo de nuestro hosting dentro de la carpeta "cig-bin" podemos encontrar el mismo archivo, gracias a eso podemos configurar el server a nuestro gusto e necesidad.

Bien lo editamos con cualquier editor, buscamos linea donde pone ";extension=php_curl.dll", y simplemente le borramos punto y coma ";".
Reiniciamos nuestro servidor Apache y ya esta funcionando. =)

En panel de control de la Caixa podemos encontrar documentación al respecto, también podemos encontrar unos ejemplos escritos en ASP, JSP, PHP4 y PHP5 los ejemplos los podéis descargar pinchando aquí

al abrirlos en el navegador nos muestra una especie de pantalla con todo tipo de información, osea un simple Form que envía datos vía método POST a la dirección HTTPS SSL.

Respondo a la pregunta hecha al principio:

para saltarse esta ventana y abrir el siguiente paso, donde el usuario va a introducir los datos de pago hemos de crear siguiente codigo:

Para que nos salte el error "SSL3_GET_SERVER_CERTIFICATE" simplemente desactivamos el control de SSL de cURL añadiendo este comando "CURLOPT_SSL_VERIFYPEER = false"

 
< ?php
//dirección de pago real
//https://sis.sermepa.es/sis/realizarPago
 
$url_tpvv='https://sis-t.sermepa.es:25443/sis/realizarPago'; //dirección de test
$clave='qwertyasdf0123456789';
$name='Comercio Pruebas';
$code='999008881'; //código de comercio proporcionado por caixa
$terminal='4'; //número de terminal
$order=date('ymdHis');
$amount='25';
$currency='978';
$transactionType='0';
$urlMerchant='http://www.sermepa.es';
$producto='Zapatos';
 
$message = $amount.$order.$code.$currency.$transactionType.$urlMerchant.$clave;
$signature = strtoupper(sha1($message));
 
//variables obligatorias
$data[Ds_Merchant_Amount] = $amount;
$data[Ds_Merchant_Currency] = $currency;
$data[Ds_Merchant_Order] = $order;
$data[Ds_Merchant_MerchantCode] = $code;
$data[Ds_Merchant_Terminal] = $terminal;
$data[Ds_Merchant_TransactionType] = $transactionType;
$data[Ds_Merchant_MerchantURL] = $urlMerchant;
$data[Ds_Merchant_MerchantSignature] = $signature;
 
//variables secundarias
$data[Ds_Merchant_ProductDescription] = "test";
$data[Ds_Merchant_Titular] = "test";
$data[Ds_Merchant_MerchantCode] = $code;
$data[Ds_Merchant_UrlOK] = "";
$data[Ds_Merchant_UrlKO] = "";
$data[Ds_Merchant_MerchantName] = "";
$data[Ds_Merchant_ConsumerLanguage] = $lang;
 
foreach($data as $key=>$val) {
	if (!($reqbody=='')) $reqbody.= "&";
		$reqbody.= $key."=".urlencode($val);
}
 
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url_tpvv);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $reqbody);
 
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); //desactivamos el comprobante de SSL
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0;Windows NT 5.1)"); //nos identificamos como un navegador
curl_setopt($ch, CURLOPT_FOLLOWLOCATION  ,true);
curl_setopt($ch, CURLOPT_HEADER ,false); //mostrar cabecera del html
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
 
echo curl_exec ($ch);
echo curl_error($ch);
curl_close($ch);
?>
 

Actualizción del codigo PHP/JS/HTML en Margen-Lab.com

Actualización de web site Margen-lab.com que esta basado en systema Indexhibit.

Trabajo realizado: correccion y adaptación de código en general (PHP, HTML), actualización y configuración de paquetes ( jQuery, Thickbox), reprogramación del codigo "Expanding Menu". Ademas se ha añadido nueva función en el menu de administración del web site, para el control de la función "Read More". Se trata de un sistema de scrolling que esconde texto  en cuando es demasiado largo.

Category Image Asociation v0.6.6

Descripcion:  Este plugin se encarga de asignar imagen desde librería o url externa. También se puede asignar url a la dicha imagen.

Manejo: "Post -> Category Image" Aqui es donde podemos asignar o asociar una imagen a una categorí­a especifica.

Conflagración: "Settings -> Category Image"

  1. Url local de la carpeta que contiene imagenes.
  2. Url completa  de la carpeta que contiene imagenes.
  3. Tipo de las imagenes que vamos a mostrar (JPG,GIF,PNG ...).
  4. Alto y Ancho de la imagen que se mostrara en el template.
  5. Alto y Ancho de la imagen preview dentro del menu.
  6. Calidad de imagenes.
  7. Opción Global Target (_blank, _self, _top, _parent).
  8. El plugin incluye de checkeo del UpDate, con cual os permitirá estar al dí­a.
  9. Crea thumb al vuelo.
  10. Carga de archivos desde disco duro.


El codigo a añadir dentro del Template

 
<div id="cat-<?php echo $i; ?>" class="category">
<div>
		< ?php echo showon_outer($category); ?></div>
 
< ?php query_posts("showposts=1&amp;cat=$category"); ?>
<span class="cat_title"><a href="<?php echo get_category_link($category);?>" >< ?php single_cat_title(); ?></a></span>
		<a href="<?php echo get_category_link($category);?>">< ?php echo category_description($category); ?></a></div>
 

Descargar Plugin para WordPress

Go to Top