programacion - Blog Juegosocio

Posts sobre la categoría programacion

videos youtube tinymc

Por mameyugo el 31.Dec.2011 facebook_16 twitter_16 delicious_16

si usamos tinymce y pretendemos insertar el nuevo codigo para los videos de youtube pulsando en el boton de codigo fuente, nos encontraremos con que no permite la etiqueta embed, con lo que intentaremos repetidas veces insertar el codigo, siempre con identico resultado elimina la etiqueta embed del código de youtube.

existe una solucion bastante sencilla, añadirle a la inicializacion de tinymce una nueva linea de etiquetas permitidas con sus respectivos atributos.

extended_valid_elements : "object[width|height|classid|codebase],"
+ "param[name|value],embed[src|type|width|height|flashvars|wmode]"

ejemplo:

Tags: php, javascript, Categorías: PHP, programacion, Comentarios: 0, Lecturas: 309

pilas con ubuntu 10.10

Por mameyugo el 19.Sep.2011 facebook_16 twitter_16 delicious_16

pilas es una libreria en python para crear juegos en entorno multiplataforma.

solo he dado los primeros pasos, pero desde luego promete.

primer paso seguir este tutorial de instalación y podremos comenzar a jugar.

la propia libreria tiene un tutorial de utilización, ejecuta en un terminal

$ pilas -e

y aparecerá una completa guia de utilizacion de la libreria de videojuegos.

puede aparecerte un error al ejecutar este comando:

AttributeError: 'LocateCompleter' object has no attribute 'setPlaceholderText'  

se soluciona facilmente cambiando tu version de python por una superior, o abriendo el archivo:  /usr/local/lib/python2.6/dist-packages/pilas-0.59-py2.6.egg/pilas/cargador/buscador.py y editendo la linea 57 añadiendole una # delante
 quedando de esta manera:

#self.setPlaceholderText("Buscar... (Ctrl+F)")

tambien puedes encontrar una completa guian en html en http://www.pilas-engine.com.ar/doc/html/index.html

Tags: ubuntu, Categorías: programacion, Comentarios: 2, Lecturas: 414

bash copia de seguridad de todas las bd mysql

Por mameyugo el 11.Jul.2011 facebook_16 twitter_16 delicious_16

Para hacer copia de seguridad rapidamente de todas las bases de datos que tengas en tu ordenador o en tu servidor, puedes utilizar este comando.

Crea un archivo con los nombres de todas las bases de datos que quieras salvar y lo llamamos bd.txt (el nombre puede ser el que te de la gana).

y después en terminal ( linux ) ejecuta:

$ for i in `cat bd.txt`;do mysqldump -u usuario -pcontrasena -d $i > /home/tuusuario/copiaseguridad/bd/$i`date +%Y%m%d`.sql;done

o en el caso de querer salvar todas exceptuando prueba

$ for i in `ls /var/lib/mysql/ | grep -v "prueba"`; do mysqldump -u usuario -pcontrasena -d $i > /home/tuusuario/copiaseguridad/bd/$i`date +%Y%m%d`.sql; done

Tags: mysql, Categorías: programacion, Comentarios: 0, Lecturas: 528

redimensionar imagenes en ubuntu

Por mameyugo el 02.Jun.2011 facebook_16 twitter_16 delicious_16

la manera mas facil de redimensionar un monton de imagenes todas juntas es desde el terminal de ubuntu

en terminal:

$ sudo apt-get install imagemagick

accede a la carpeta:

$ cd carpeta

redimensiona todas las imagenes de la carpeta a una anchura maxima de 500 px (ojo que no hace una copia de las imagenes, las redimensiona, con lo que si quieres conservar los originales te aconsejo que hagas una copia antes)

$ mogrify -resize 500 *

y para redimensionar imagenes de manera ocasional o solo unas pocas la opcion de la integracion directa con nautilus es muy comoda

$ sudo apt-get install nautilus-image-converter

con lo que al reiniciar las x o reiniciar por completo dispondras de un nuevo menú al pinchar con el boton derecho encima de una imagen redimensionar imagen y rotar imagen, realmente comodo.

listo!

Tags: ubuntu, imagen, Categorías: programacion, Comentarios: 2, Lecturas: 627

creando un api en php: paso 2

Por mameyugo el 19.Jan.2010 facebook_16 twitter_16 delicious_16

la elecccion del protocolo, es una de las primeras decisiones que hay que tomar en la creaccion de un web service, existen varios metodos:

- SOAP: es un protocolo para el intercambio de informacion entre ordenadores (independientemente del sistema, y del lenguaje), puede usar distintos protocolos, pero aqui el que nos interesa es HTTP, utiliza XML como encapsulamiento de datos, lo normal seria tener un xml de definicion de servicio( que es un xml que describe los metodos que se puedesn usar y los parametros a pasar). Es considerablemente lento, ya que aparte del tamaño de la llamada esta requiere una gran cantidad de flujo de informacion. La manera normal de usarlo seria, el cliente pide el xml de definicion, el servidor lo sirve, el cliente lo procesa y crea una llamada de acuerdo a esta definicion, el servidor recibe esta llamada y devuelve la respuesta al la llamada.

La manera normal de usarlo seria (ejemplo de wikipedia):

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
     <getProductDetails xmlns="http://warehouse.example.com/ws">
       <productId>827635</productId>
     </getProductDetails>
   </soap:Body>
</soap:Envelope>

Esta peticion devolveria los datos del producto con ese identificador.

Desde PHP 5 soap tiene soporte nativo, lo que lo hace muy facil de usar para crear nuestra propia API o consumir servicios web de otra pagina, en otro post explicare una manera facil de hacerlo.

- REST: al igual que SOAP es un protocolo para el intercambio de informacion entre ordenadores, pero solo puede usarse con el protocolo HTTP, que por otro lado es el que nos interesa. No tiene restricciones en cuanto a encapsulamiento de datos, podemos enviarlos y recibirlos de la manera que queramos JSON, XML, HTML, CSV... y utiliza los metodos propios de HTML, los comunmente conocidos y que manejan nuestros navegadores: GET y POST, y los menos conocidos pero igualmente utiles PUT y DELETE. Es un protocolo muchisimo mas rapido que SOAP, ya que realmente SOAP es un REST con un monton de restricciones, de formato, de envio, de encapsulamiento...

La manera normal de usarlo seria:

- POST -> http://www.ejemplo.com/mensaje/nuevo (el metodo nos indica la accion a realizar, INSERTAR un nuevo dato y la url nos indicaria el que, un nuevo mensaje, los parametros que se envian con la peticion, nos dan los datos a insertar, titulo=nuevo titulo&mensaje=hola mundo)

- PUT -> http://www.ejemplo.com/mensaje/5 (el metodo nos indica la accion a realizar, MODIFICAR y la url el que, el mensaje 5, los parametros que se envian con la peticion, nos dan los datos a modificar, titulo=nuevo titulo 2&mensaje=adios mundo)

- GET -> http://www.ejemplo.com/mensaje/8 (el metodo nos indica la accion a realizar, MOSTRAR y la url el que, el mensaje 8)

- DELETE -> http://www.ejemplo.com/mensaje/13/comentario/2 (el metodo nos indica la accion a realizar, BORRAR y la url el que, el comentario 2 del mensaje 13)

 PHP no tiene una libreria especifica para el manejo de peticiones REST, dado que no tendria sentido, ya que REST esta basado en el mismo protocolo que la web, por lo tanto no se puede distinguir a priori entre peticiones al web service y peticiones normales de web.

 

Tags: php, api, webservice, Categorías: PHP, programacion, Comentarios: 1, Lecturas: 1399

creando un api en php: paso 1

Por mameyugo el 19.Jan.2010 facebook_16 twitter_16 delicious_16

crear un api en php, en principio es facil, no deja de ser peticiones y respuestas, un cliente api, te envia una peticion en un formato, y tu servidor de api tiene que responderle de manera adecuada.

cliente: dameUltimosProductos

servidor:

<ultimosProductos>

<producto>12</producto>

<producto>11</producto>

<producto>10</producto>

</ultimosProductos>

no existe mucha documentacion al respecto, pero lo que si es seguro es que necesitas una herramienta para realizar las primeras pruevas, pues la herramienta podria ser este addon para firefox: addons.mozilla.org/en-US/firefox/addon/2691

 

Tags: api, webservice, addon, Categorías: PHP, programacion, Comentarios: 0, Lecturas: 1218

eclipse indentar correctamente todo el archivo

Por mameyugo el 22.Dec.2009 facebook_16 twitter_16 delicious_16

puedes pasarte tranquilamente 5 min indentando correctamente un archivo, hasta que queda a tu gusto, (malditos editores chungos). Pues bien, si trabajas con eclipse acabas de perder 5 minutos, simplemente pulsa:

 Ctrl + Shift + F

ya has terminado!

Tags: php, Categorías: programacion, Comentarios: 1, Lecturas: 1547

eclipse: agregar soporte a php a cualquier proyecto

Por mameyugo el 10.Nov.2009 facebook_16 twitter_16 delicious_16

cuando creas un nuevo proyecto con eclipse, en mi caso el caso es un nuevo proyecto Mercurial, si no creas el proyecto especificamente con soporte php, no se lo puedes agregar mas tarde, al menos en modo grafico.

existe solucion al problema, entra en la carpeta en la que has creado el proyecto y busca el archivo oculto proyect, en Linux ( .proyect), editalo:

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
        <name>stocks</name>
        <comment>
                Cloned from default ([protocolo]://[tu_ruta]/)
        </comment>
        <projects></projects>
        <buildSpec></buildSpec>
        <natures></natures>
</projectDescription>

y cambialo por:

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
        <name>stocks</name>
        <comment>
                Cloned from default (
[protocolo]://[tu_ruta]/)
        </comment>
        <projects></projects>
        <buildSpec>
                <buildCommand>
                        <name>org.eclipse.php.core.PhpIncrementalProjectBuilder</name>
                        <arguments>
                        </arguments>
                </buildCommand>
                <buildCommand>
                        <name>org.eclipse.php.core.ValidationManagerWrapper</name>
                        <arguments>
                        </arguments>
                </buildCommand>
        </buildSpec>
        <natures>
                <nature>org.eclipse.php.core.PHPNature</nature>
        </natures>
</projectDescription>

despues crea un nuevo proyecto php y copia los archivos que tendra tu proyecto en la carpeta oculta .settings, a la carpeta .settings de tu proyecto.

Cierra eclipse, y vuelve a abrirlo, tendras un proyecto mercurial con soporte php.

Tags: Categorías: PHP, programacion, Comentarios: 1, Lecturas: 2185

expresiones regulares con mysql

Por mameyugo el 04.Nov.2009 facebook_16 twitter_16 delicious_16

Existe la posibilidad de hacer busquedas en mysql a traves de expresiones regulares, para ello utilizaremos REGEXP.
esta seria la sintaxis:

SELECT * FROM tabla WHERE (SELECT campo REGEXP '^[a-f.]{7,9}' )=1

Esta query nos devuelve el resultado de todos los resgistros en los que campo contenga en su inicio entre 7 y 9 letras de de las comprendidas entre la a y la f.

Pero hay que tener mucho cuidado al hacer

Tags: mysql, Categorías: programacion, Comentarios: 0, Lecturas: 981

almacenar imagenes en mysql

Por mameyugo el 07.Aug.2009 facebook_16 twitter_16 delicious_16

como almacenar imagenes en una base de datos, es una pregunta que me hizo el amigo nico hace unos dias, y respondo en forma de post, si, es posible, y depende la situacion puede ser ventajoso (desde luego, no desde el punto de vista del rendimiento).
realmente el proceso es bien sencillo, abrimos el archivo almacenandolo en una variable, que contiene datos indescifrables (puedes probar a abrir una imagen con un editor de textos), a continuacion cambiamos la codificacion de esta variable a

Tags: gd, mysql, Categorías: PHP, programacion, Comentarios: 1, Lecturas: 946