Ver Mensaje Individual
  #12 (permalink)  
Antiguo 11/06/2013, 21:35
Avatar de anacona16
anacona16
 
Fecha de Ingreso: marzo-2010
Ubicación: Bogota DC
Mensajes: 610
Antigüedad: 14 años, 8 meses
Puntos: 52
Respuesta: Acortador URL

Ya que usas PHP a pelo -- Como dices tu -- y ya que lo primero que se ejecuta en tu sistema es un index.php y sin saber mucho como estas haciendo las cosas, podrias hacerlo asi:

Código PHP:
Ver original
  1. // Archivo index.php
  2. <?php
  3.  
  4. // Capturar HASH desde la url www.dominio.com/U6w7u
  5. // Busca alguna funcion para hacerlo
  6. // Para el ejemplo utlizaremos cualquiera
  7. $hash = 'U6w7u';
  8.  
  9. // Suponiendo que tienes algunas url's ya reservadas en tu sistema como por ejemplos
  10. // www.dominio.com/contacto
  11. // www.dominio.com/privacidad
  12. // ...
  13. // Para estas URL's no necesitarias buscar la URL larga
  14. // Se crea un array con url's de tu web
  15. $url_s = array('contacto', 'privacidad');
  16.  
  17. // Compruebo que el HASH no esta en las url's de tu sistema
  18. // Si devuelve FALSE se hara la busqueda de la url larga en tu BD
  19. if (!in_array($hash, $url_s)) {
  20.  
  21.   // Suponiendo que la tabla donde guardas las urls se llame tabla_urls
  22.   // Para este ejemplo uso PDO
  23.   $consulta = $db->prepare('SELECT url_larga FROM tabla_urls WHERE hash_url_corta = :hash');
  24.   $consulta->execute(array(':hast' => $hash));
  25.  
  26.   $resultados_consulta = $consulta->fetchColumn();
  27.  
  28.   // Has comprobacion de que la consulta te devuelve resultados
  29.   if ($consulta->rowCount() > 0) {
  30.    
  31.     // Si hay resultados redirecciono
  32.     header('Location: ' . $resultados_consulta['url_larga']);
  33.   } else {
  34.  
  35.     // Ya decides tu que hacer aqui
  36.   }
  37.  
  38. }

Varias NOTAS: Hace mucho no uso PDO a mano limpia, haz algun tipo de validacion al HASH que recibes desde la URL.

Espero te sirva.
__________________
Aprendiendo!!!