Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   La Taberna (https://www.clubdelphi.com/foros/forumdisplay.php?f=40)
-   -   Acortando URLs con mi pequeño proyecto Shortcutz (https://www.clubdelphi.com/foros/showthread.php?t=87681)

dec 10-02-2015 20:54:03

Acortando URLs con mi pequeño proyecto Shortcutz
 
¡Hola a todos! ¡Hip!

¡Hip! Como estamos en la taberna, ¡hip!, voy a contaros sobre otro pequeño proyecto mío, ¡hip! Si necesitáis acortar URL para compartirlas más fácilmente, ¡hip!, podéis usar Shortcutz, que, no puede ser más sencillo, porque, en realidad sólo hace eso mismo: acortar URL largas. ¡Hip! :D

El sitio web de Shortcutz es tal que este: short.cz, y, se maneja (como todos mis sitios) con mi Humm PHP, lo digo para que lo sepáis. ¡Hip! :D

Así que ya lo sabéis, si queréis decirle a alguien dónde queda Madrid (España), por ejemplo, en Google Maps, en lugar, de esta URL:

Código:

https://www.google.es/maps/place/Madrid/@40.4378271,-3.6795366,11z/data=!3m1!4b1!4m2!3m1!1s0xd422997800a3c81:0xc436dec1618c2269
Podéis usar Shortcuz y convertirla en esta otra: short.cz/b ¡Hip! Que os llevará al mismo sitio. ;)

Fácil, cómodo y para toda la familia. ;)

¡Hip! ¡Hip! :D

Al González 10-02-2015 21:25:42

Gracias David, interesante utilidad. :) +1

Mi remedio para el hipo es, con los músculos completamente relajados, respirar lenta y hondamente llenando al máximo los pulmones y sosteniendo el aire por al menos cinco segundos. Dos o tres repeticiones te bastarán. ;)

dec 10-02-2015 21:29:34

Hola,

Gracias Al, siempre tan amable. ¡Hip! En realidad no es hipo, bueno, sí es hipo, pero, se debe a la taberna, ya sabes, ¡hip!

¡Esto no hay quien lo quite si no es durmiéndola! ¡Hip! :D

nlsgarcia 10-02-2015 23:30:50

David,

Cita:

Empezado por dec
...Si necesitáis acortar URL para compartirlas más fácilmente...podéis usar Shortcutz...hace eso mismo: acortar URL largas...

Excelente ^\||/

Pregunto : A nivel técnico, ¿Como funciona Shortcutz?, aparte de lo obvio :rolleyes:

Saludos,

Nelson.

dec 11-02-2015 00:08:14

Hola,

En realidad es bastante sencillo. Básicamente, se trata de usar una algoritmo similar al que se describe en este artículo: short.cz/m. Con un algoritmo como este conseguimos convertir enteros en cadenas y viceversa, al mismo estilo en que se hace con los "ID" de los vídeos de Youtube, por ejemplo, pero, también en muchos otros sitios web.

Lo demás viene dado, esto es, cada URL larga se almacena en la tabla de una base de datos. Dicha tabla cuenta, entre otros, con un campo "ID", un "entero autoincrementado", de manera que el mismo entero nos dará una cadena, y la misma cadena el número entero correspondiente. Después no hay sino estar atentos a las peticiones al sitio, es decir, por ejemplo, el enlace "short.cz/m" contiene un argumento "m", que, corresponde al "ID" 21, en este caso, de la tabla de la base de datos.

Se trata pues de estar al tanto del argumento, comprobar que, en efecto, "m" se corresponde con "21", que es un registro existente en la base de datos. Luego se toma la URL larga de dicho registro y se redirige al usuario a ella sin más. No es el primer "acortador de URL" que hago, la verdad, ni mucho menos es el único del "mercado"... pero tenía en la cabeza el sitio web, el dominio "short.cz" me pareció curioso y no tardé mucho en llevarlo a cabo gracias a que se basa en Humm PHP y a que casi lo tenía en la cabeza.

No sé si me he explicado, pero, si tienes alguna duda no dejes de comentarla por aquí. :)

Gracias por comentar Nelson.

blackx5n 11-02-2015 02:08:41

Gracias por la utilidad, muy interesante la explicacion ya me habia preguntado como es que muchos sitios implementaban los acortador de URL.

Excelente ^\||/ ^\||/ ^\||/

nlsgarcia 11-02-2015 02:42:22

David,

Cita:

Empezado por dec
...No sé si me he explicado...

v:-)v

Nelson.

newtron 11-02-2015 10:00:28

Muy interesante. ^\||/

Casimiro Notevi 11-02-2015 10:31:37

Con un servicio de esos asumes la responsabilidad con tus usuarios de que nunca será eliminado y lo mantendrás hasta el infinito y más allá :p

pacopenin 11-02-2015 11:40:44

Muy bueno. Cuando necesite url's cortas lo tendré en cuenta. ^\||/

Neftali [Germán.Estévez] 11-02-2015 13:21:47

^\||/

Yo ya tengo la mía: short.cz/e

roman 11-02-2015 16:22:09

Hola dec,

Hay un comportamineto extraño con el servicio. Lo acabo de corroborar con el enlace de Neftalí y me sucedió ayer con el que pusiste en el mensaje #5, y es que la primera vez que doy clic, me lleva al sitio del servicio en lugar del destino. La segunda vez y subsecuentes ya lo hace correctamente.

// Saludos

Neftali [Germán.Estévez] 11-02-2015 16:37:11

Cita:

Empezado por roman (Mensaje 488682)
Hola dec,

Hay un comportamineto extraño con el servicio. Lo acabo de corroborar con el enlace de Neftalí y me sucedió ayer con el que pusiste en el mensaje #5, y es que la primera vez que doy clic, me lleva al sitio del servicio en lugar del destino. La segunda vez y subsecuentes ya lo hace correctamente.

// Saludos


Cierto. A mi too. :D

roman 11-02-2015 16:43:14

Quizá es un truco para atraer gente a su sitio :D

// Saludos

dec 11-02-2015 22:10:25

Hola a todos,

¡Gracias por los comentarios! Respecto del "fallo" en el servicio, lamento decir que me he topado con el problema... de hecho un "Shortcutz" dirige al propio sitio sólo si no se encuentra el correspondiente registro en la base de datos. O sea que, de encontrarlo, debería dirigir a la "URL larga". De hecho ya digo que no he notado el fallo, pero, tampoco negaré que se haya podido producir. Pensándolo un poco tal vez se haya debido a posibles cambios que se llevasen a cabo o algo así. ;)

Casimiro Notevi 11-02-2015 23:15:53

A mí me va bien.

dec 11-02-2015 23:25:39

Hola,

Cita:

Empezado por Casimiro Notevi (Mensaje 488663)
Con un servicio de esos asumes la responsabilidad con tus usuarios de que nunca será eliminado y lo mantendrás hasta el infinito y más allá :p

Igual no es una tontería poner un "disclaimer" o algo así. Ciertamente, a mí me gustaría que durase mucho tiempo, pero, tampoco puede uno garantizar nada. Sin embargo, mientras mantenga el "hosting" y los dominios (ojalá muera antes, o sea) puede estar "online". :)

roman 12-02-2015 16:15:34

Hablando de muertes, igual puedes hacerle como los cementerios. Quien pague a perpetuidad tendrá su atajo hasta el fin de los tiempos, quien no, no. :D

// Saludos

roman 12-02-2015 17:14:02

Cita:

Empezado por dec (Mensaje 488699)
¡Gracias por los comentarios! Respecto del "fallo" en el servicio, lamento decir que me he topado con el problema... de hecho un "Shortcutz" dirige al propio sitio sólo si no se encuentra el correspondiente registro en la base de datos. O sea que, de encontrarlo, debería dirigir a la "URL larga". De hecho ya digo que no he notado el fallo, pero, tampoco negaré que se haya podido producir. Pensándolo un poco tal vez se haya debido a posibles cambios que se llevasen a cabo o algo así. ;)

Hola dec,

He podido reproducir el fallo consistentemente:
  1. Abrir navegador (firefox, chrome, ie)
  2. Ir a ClubDelphi
  3. Abrir este hilo e ir al mensaje #11 (el de Neftalí)
  4. Dar clic en el enlace
  5. Dirige a short.cz en lugar del destino
  6. Al siguiente clic ya dirige al destino

Para repetir el fallo hay que cerrar el navegador y sucede cada vez que se inicia.

// Saludos

dec 12-02-2015 18:53:28

Hola,

Es correcto Román. El problema está en cierta rutina que trata de adaptar el lenguaje del sitio al idioma del navegador. Esta rutina basa su trabajo en la sesión de PHP, de manera que, cuando esta no existe, hace su trabajo (muy mal, para el caso del sitio web de Shortcutz) y dirige al usuario a la portada del sitio. De momento he quitado la llamada a la rutina y todo funciona como se espera, aunque, voy a ver si encuentro una solución que haga lo propio sin causar el problema.

¡Gracias por el aviso! :)


La franja horaria es GMT +2. Ahora son las 03:02:07.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi