Obtener el thumbnail de los videos de Google Video con PHP

Mediante PHP podemos obtener la dirección del thumbnail (imagen pequeña que sirve de previsualización de una imagen más amplia ó un video) de los famosos servicios YouTube ó Metacafe entre otros. Sin embargo, para obtener el thumbnail de los videos de Google, en mi caso, es ó fue un poco dificil hallar la forma. Pero acá les dejo una función que realiza el proceso de manera sencilla. Basta con colocar como único parámetro el código del video. Veamos y luego explicamos.

<?php
function getgooglethumb($videoid)
{
$vrss = file_get_contents("http://video.google.com/videofeed?docid=".$videoid);

if(!empty($vrss))
{
preg_match('/<media:thumbnail url="([^"]+)/',$vrss,$thumbnail_array);
$thumbnail = $thumbnail_array[1];
//Removemos el punto y com -> amp;
$thumbnail = str_replace('amp;','',$thumbnail);
}

return $thumbnail;
}

echo "<img src='".getgooglethumb('2176025602905109829')."' alt='Google Video' />"
?>

La imagen la obtenemos de los feeds de Google Video. Usamos la función file_get_contents, el cual lee el contenido de un archivo y lo pasa a una cadena (en este caso $vrss), recibe como parámetro una URL válida. Mediante la función preg_match realizamos una comparación de expresión regular. Esta función recibe 3 parámetros elementales: la expresión regular, el contenido a analizar (la variable $vrss) y una array de respuesta. Del array de respuesta solo nos interesa la primera coincidencia. Finalmente mediante la función str_replace, removemos el punto y coma (amp;). Así de forma un poco atropellada obtenemos la URL del thumbnail del video de Google.

Mas info file_get_contents, preg_match, str_replace.

Acortar direcciones-url extensas con PHP (función)

Quizás haya notado que en algunos foros, los usuarios colocan direcciones web extensas para llevarnos a un contenido específico, algo así:

http://www.google.com/search?hl=en&client=firefox-a&channel=s&rls=org.mozilla%3Aen-US%3Aofficial&hs=BCR&q=metacafe&btnG=Search

Sin embargo, también habrá notado que estos enlaces a veces son reducidos de longitud para evitar que el diseño de la página se vea afectado, algunos partes de la dirección son reemplazado por puntos suspensivos. Esto hace que se vea más presentable.

http://www.google.com/search?h[ ... ]afe&btnG=Search 

Esto lo podemos lograr con PHP y una sencilla pero poderosa función casera. Veamos:

<?php
function acortarurl($url){
    $longitud = strlen($url);
    if($longitud > 45){
        $longitud = $longitud - 30;
        $parte_inicial = substr($url, 0, -$longitud);
        $parte_final = substr($url, -15);
        $nueva_url = $parte_inicial."[ ... ]".$parte_final;
        return $nueva_url;
    }else{
        return $url;
    }
}

$url_larga = "http://www.google.com.pe/search?hl=en&q=ribosomatic&btnG=Google+Search&meta=";
$url_corta = acortarurl($url_larga);
echo"<a href="$url_larga">$url_corta</a>";
?>

Copien y peguen el código anterior y hagan la prueba en su servidor local y verán el resultado.

Tabla de códigos ASCII

Como parte de un trabajo deseaba tener a la mano una lista ó tabla de codigos ASCII y su correspondiente valor. Así que encontre una que me gusto por su simpleza, haber si también les sirve a alguien. Y si conoces otra ¿por que no la recomiendas?

Tabla ASCII

Visualiza tus archivos PDF en el navegador web sin necesidad de Adobe Reader

Quizás pasamos por este problema: tenemos un gran cantidad de archivos PDF y en la PC del trabajo ú otro lugar no esta instalado el software Adobe Reader, no deseamos descargar el dicho software por el tiempo u otros motivos. ¿Existe algunas solución?

Por supuesto. Existen aplicaciones web que nos permiten visualizar el contenido de nuestros archivos PDF en el navegador sin necesidad de software ó plugin extra. 

1. Utilizando Gmail

Podemos enviar PDF como archivo adjunto a nuestra propia cuenta de Gmail.  Luego podemos abrir el mensaje y hacemos clic en enlace "Visualizar como HTML" que aparece a lado de los archivos adjuntos PDF. 

Gmail PDF 

PDF Escape es una aplicación web para subir, visualizar y editar archivos PDF. Miralo como una versión web de Adobe.

PDF Escape aplicacion web 

Enviar los archivos PDF como archivo adjunto al correo electronico upload@upload.slideshare.net ó subelo a través del navegador web usando este servicio y verás tu archivo PDF como diapositivas/presentacion dentro de la reproductor SlideShare. El motor de la conversión de PDF de SlideShare es impresionante.

Slideshare PDF 

4. Zoho Viewer

Zoho también te permite subir archivos PDF para poder visualizarlos en tu navegador web preferido. 

 Zoho Viewer

5. Samurajdata

Un rápido y eficiente (de un simple interfaz) visor de PDF y otros tipos de archivos. Puedes subir archivos de tu PC ó escribir la URL donde se encuentre tu archivo PDF.

Visor Samurajdata

Ver Artículo Completo ››

Consejos para optimizar tu código PHP

Cuando nuestro proyecto web desarrollado en PHP, por ejemplo un portal, empieza a experimentar éxito en miles de visitas diarias, es allí donde debemos hacer un buen uso del lenguaje para que nuestros proyectos en PHP mantengan un rendimiento satisfactorio. He aquí algunos consejos...

  1. Variables: No declares variables que no se vayan a usar ya que ocupan memoria. Utiliza constantes para aquellos valores que serán fijos a lo largo de la ejecución. A la hora de declarar variables siempre es preferible usar variables estáticas. Intenta evitar el uso de variables globales.
  2. Unset: Aunque PHP dispone de un Garbage Collector (liberador de memoria) no esta de mas usar la función unset para eliminar variables y aumentar la memoria disponible, sobretodo cuando se usan arrays o variables extensas en
    servidores limitados.
  3. Comparaciones: Los switch / case usan mas ciclos de procesador que los if / else, por lo tanto usa estos últimos siempre que puedas.

Ver mas consejos en cibermanuales

Encuesta de la semana: Lenguaje de lado de servidor

Por acá pasan muchos desarrolladores-programadores, y nos gustarían saber qué lenguajes de lado de servidor usan para sus proyectos web.

Resultados de la encuesta anterior: Framework para JavaScript

A los 7 días de colocada la encuesta hay un triple empate: Prototype, jQuery y Mootools con 21 votos cada uno. Los usuarios elegieron y eso se respeta.

 

Como crear un formulario (form) con Flash y PHP

En LayoutGalaxy prepararon un tutorial paso a paso sobre como crear un formulario de envio de datos usando PHP y MySQL. Está muy detallado cada paso, incluso con imágenes como para no perdernos.

Formulario con PHP y Ajax

Descargar el ejemplo

Juego creado con menos de 200 líneas de código en JavaScript

Esto es lo que se puede hacer con las últimas versiones de Prototype (1.6) y script.aculo.us (1.8).

 Esto no es flash!

Se trata de un juego que consiste en eliminar, grupos de bloques adyacentes tanto como nos sea posible y así obtener puntos. Para el desarrollador Gary Haran le tomo 1 día entero de trabajo hacer este jueguito, con menos de 200 líneas de código.

200 lineas de codigo 

Y tu ¿qué puedes hacer con Prototype y script.aculo.us?

Ver Artículo Completo ››

Convierte tus scripts PHP a ejecutable (.exe) con Wapache

He leido algo de ello alguna vez pero no le tome mucho interes, ahora luego de ver la manera fácil como se explica en JasLabs, me anime a probar. ¿Cómo se hace? Existe muchas utilidades (comerciales) para generar una apliación ejecutable (.exe) con nuestro scripts en PHP, pero existe una de código abierto: Wapache (basado en el servidor web Apache). En realidad Wapache, lo que hace es emular una aplicación ejecutable combinando un control de IE embelido y una versión de Apache.

Empezemos descargando la última versión de Wapache, de Sourceforge. Descomprimimos el paquete ZIP, y veremos la siguiente estructura:

Wapache 

Tiene casi la misma estructura del servidor web Apache (por no decir igual). Por defecto trae una ejemplo de aplicación, vamos al directorio bin y ejecutamos Wapache.exe. Los archivos que se usan para emular esa aplicación se encuentran en el directorio htdocs. Es en ese directorio donde debemos colocar nuestros archivos PHP. Para que todo funcione correctamente debe colocar un archivo index.php que será el punto de inicio de la aplicación.

Ahora, vamos al directorio conf y abrimos con un editor de texto el archivo default.wcf, y buscamos la línea (abajo) y cambiamos index.html por index.php.

InitialUrl _app http://wapache/index.php main

Nuevamente vamos al directorio bin y abrimos Wapache, el resultado:

Wapache demo 

La conclusión a la que llegue es que aparte de tus script PHP, todos tus archivos (css, js, imágenes, etc) deben estar en el directorio docs, todos. De lo contrario se mostrarán mensajes indicándote que cierto archivo no se ha encontrado. Cómo en mi caso, probando no salió una imagen que encerré en un circulo rojo en la imágen.

En resumen

  1. Descarga y descomprime
  2. Copia tus archivos a htdocs
  3. Configura en conf/default.wcf
  4. Prueba en bin/Wapache.exe 

Wapache, además te permite agregar menús en la parte superior de la ventan, con lo cual daría un mejor acabado a nuestros proyectos. Pueden encontrar más sobre Wapache aquí. Espero que les sea útil esta información. Y si se me olvido mencionar algo, acepto comentarios.

Captcha con PHP fácil de implementar

En Nodstrum encuentro una utilidad en PHP para crear Captcha facilmente (uno de los pocos en toda la red que funciona. Garantizado!). Les explicaré como hacerlo.

Easy Captcha

Paso 1: obligatorio! verifica que tengas habilitado la librería GD de PHP.

Paso 2: Nos descargamos la clase captcha.class.php del blog del autor, y vamos a configurar este archivo. Busca la variables $imageDirectory e $imageURL. La primera variable contiene el nombre de la carpeta donde se almacenarán las imágenes generadas dinámicamente. Esta carpeta debe tener permiso de escritura. La segunda variable es la dirección URL completa de la carpeta anterior. Ejemplo:

var $imageDirectory = 'image_directory';
var $imageURL = 'http://localhost/mi_sistema_captcha/image_directory';

Paso 3: Creamos un archivo PHP, le damos cualquier nombre, para este ejemplo index.php.  Lo que vamos hacer es:

  • Llamar a la clase captcha.class.php
  • Crear una instancia de la clase Captcha
  • Usamos el método create() de la instancia y lo pasamos a una variable, en este caso $captchaImage
  • Note: que verificamos si la variable POST[$captcha->captchaInputName] esta declarada. Esto lo hacemos porque usamos el mismo archivo index.php para el proceso de verificación del captcha.
  • Usamos el método verify() para verificar si el captcha el correcto ó no. Se almacenerá el resultado en la variable $message.
  • Ya en  la parte del body, si $message esta declarado, se muestra; caso contrario mostrará el formulario. Note que imprimos la variable $captchaImage. Ésta contiene una imagen con un código y campo de texto, osea en captcha en sí.

Código de index.php

<?php
require_once('captcha.class.php');
$captcha = new Captcha;
$captchaImage = $captcha->create();

//verificamos si variables POST estan declaradas
if(isset($_POST[$captcha->captchaInputName])){

//verificamos el captcha
$verified = $captcha->verify($_POST[$captcha->captchaInputName]);
if($verified){
$message='Correcto';
}else{
$message='Incorrecto';
}
}
?>

<html>
<head>
<title>Captcha</title>
</head>

<body>
<?php
if(isset($message)){
echo $message;
}else{
?>

<form name="formulario" method="post" action="index.php">
<?php echo $captchaImage; ?>
<input type="submit" value="Verificar" />
<?php } ?>
</form>
</body>
</html>

[ ver un demostración del captcha

Realmente una práctico y sencillo.

Vía | Nodstrum 

Navegación

Categorias

Archivos