miércoles, 16 de julio de 2014

INTRODUCCIÓN
  PHP (Hypertext Pre-processor) es un lenguaje de programación del lado del servidos especialmente orientado al desarrollo
web. Es un lenguaje interpretado, al contrario de otros lenguajes como pueden ser C/C++ que son
compilados, es decir este lenguaje no se compila antes de ser ejecutado. El codigo fuente es interpretdo
por el servidor web con un módulo procesador de PHP.

  PHP es un lenguaje que forma parte del llamado software libre (este software una vez adquirido puede ser usado, copiado, modificado y redistribuido libremente).

  PHP es un lenguaje muy utilizado y cuenta con una amplia documentación y librerías creadas por
la comunidad de programadores.

  Este lenguaje tiene una curva de aprendizaje muy corta y permite crear aplicaciones dinámicas con un
esfuerzo relativamente bajo.

CARACTERÍSTICAS DE PHP

  • Es un lenguaje interpretado. No se compila antes de ser ejecutado. El servidor necesita un módulo que interprete el código PHP.
  • Es un lenguaje del lado del servidor. En la programación web se diferencian dos lenguajes: por un lado están los que se ejecutan en el lado del servidor y se devuelve el resultado HTML al navegador y el que se ejecuta en el lado del cliente (en el navegador) y modifican el código devuelto por el servidor (DOM), encontrándose al lenguaje PHP en el primer grupo. En el segundo grupo estarían lenguajes como JavaScript del que se habla en otras entradas. Como consecuencia de esto es un código invisible al usuario, ya que es interpretado en el servidor y es devuelto al navegador el resultado.
  • Es un lenguaje encaminado a la creación de páginas dinámicas, en contraposición a las páginas estáticas. Una página es dinámica cuando permite interactuar al usuario con la misma.
  • Es libre por lo que es accesible a cualquier público.
  • Es un lenguaje muy flexible y tiene una curva de aprendizaje poco pronunciada por lo que es un lenguaje muy acogido por la comunidad.
  • Debido a lo anterior tiene una gran documentación, tanto por parte de la comunidad como en su web oficial.
  • Permite la Programación Orientada a Objetos (POO). Permite la creación de clases, con herencia y composición. Explico esto en un Programación Orientada a Objetos (POO).
  • Permite la programación sin usar una metodología, pero también permite la programación con metodologías MVC (Modelo - Vista - Controlador) mucho más ordenadas y claras. Este modelo separa la lógica de control, los datos (Bases de datos) y la interfaz del usuario.


miércoles, 6 de noviembre de 2013

INTRODUCCIÓN 

Si tu netbook Airis Kira N7000 se queda bloqueado en la pantalla de Airis o simplemente quieres actualizarlo, en esta entrada veremos como hacerlo de una forma muy sencilla.

Solo necesitamos una tarjeta SD, descargar el sistema operativo y un programa para montar la imagen en la tarjeta SD:
1. El programa

2. SO


PASO 1

Una vez lo hayamos descargado todo, instalamos el programa, lo abrimos en ``ejecutar como administrador´´ y veremos esto:

1. Pantalla inicial.

Una vez aquí le damos a ``OK´´ y nos deberá salir esto:

2. Página principal (programa).


Ahora vamos a la pestaña ``Disk´´ que esta situada arriba a la izquierda, la clicamos y vamos a ``Restore Virtual Hard Disk image physical drive...´´ aquí lo vemos:

3. Disk y Restore.

Bien, una vez abierto esto, se deberá ver así:

4. Modal para seleccionar tarjeta SD.


Aquí seleccionamos la tarjeta SD donde vamos a montar la imagen para arreglar o actualizar el netbook y le damos a ``OK´´, nos aparecerá esta otra ventana:

5. Seleccionamos SO.


Bien, aquí simplemente seleccionamos el SO previamente descargado y clicamos en abrir, nos aparecera un mensaje de confirmación el cual debemos aceptar, es este:

6. Confirmación.


Le damos a ``SI´´ y automaticamente nos montara la imagen, deberá salirnos una ventana cargando con un pocentáje, esta es:

7. Cargando.

Cuando llegue al 100% habrá finalizado y se cerrarán las dos ventanas quedando el programa como al principio, la tarjeta SD está lista.

PASO 2

Ahora debemos meter la tarjeta SD en la ranura para tarjetas del netbook con este aún apagado:

1. Ranura para SD.


Una vez introducida encendemos el netbook (es recomendable que esto se haga con el cargador enchufado al dispositivo ya que si se apagara durante el proceso puede ser que el problema empeore) , el netbook se encenderá directamente dese la SD y nos saldrán estos datos.


2. Booting from SD.

3. Updating image...

4. Take off SD and reboot.


Cuando nos salga ese ultimo mensaje en el que pone ``Take off SD and reboot.´´ tendremos que sacar la SD y reiniciar el netbook, si lo hemos hecho todo bien al reiniciar el sistema arrancará sin problemas, eso si, la primera vez tardara mas de lo normal en arrancar pero es totalmente normal.


5. ¡¡ARREGLADO!!

martes, 5 de noviembre de 2013

LIBERAR MÓVIL: SAMSUNG GALAXY ACE

  En esta entrada explicaré brevemente como liberar un Samsung Galaxy Ace de manera gratuita.

  El proceso es muy sencillo, solo hay que seguir unos pasos y cumplir ciertos requisitos:

  • Tener la stock rom (Si se ha cambiado la rom y no sabes como volver a ponerla de fábrica, pónmelo en los comentarios y subiré otra entrada explicandolo brevemente).
  • Tener acceso root, es decir, acceso en modo administrador (y lo mismo de antes, si no sabes como "rootearlo" pónmelo en los comentarios y subiré una entrada explicando como hacerlo).
  • Tener una tarjeta SIM de un operador diferente al nuestro (para probar la liberación y utilizarlo una vez liberado).
  • Descargar un programa llamado "Android Terminal Emulator", aquí dejo el link: 


  Una vez que hemos cumplido cada uno de los requisitos anteriormente expuestos y descargado e instalado el programa, lo abrimos y nos encontramos lo siguiente:

1. Android Terminal Emulator
  Bien, ahora sólo nos queda meter esta serie de códigos (los cuales explicaré brevemente lo que hacen pero por el que tenga curiosidad). Esta serie de códigos son códigos de términal de linux (ya que android es un sistema operativo Linux):

1.- su 
2.- cd /
3.- mount -o remount rw /
4.- mkdir /efs
5.- mount -o nosuid, ro ,nodev -t vfat /dev/block/stl5 /efs
6.- cat /efs/mits/perso.txt

  Es muy importante fijarse bien en todos los espacios y ponerlo todo correctamente o el programa nos dara error y tendremos que cerrarlo y volver a abrirlo. No olvidar que es código de terminal de Linux y trabajamos directamente con el sistema operativo, y si no hacemos exactamente lo de arriba podemos estar poniendo un código que haga algo completamente distinto a lo que queremos, así que mucha atención.

  Ahora dejo el codigo anterior por pasos e imágenes para que pueda resultar más fácil.

1.-

1. "rooteado"
Una vez puesto el primero código le damos a intro y quedaría lo mostrado en la imagen. Lo que hemos hecho es ponernos como root (administrador) y así tener acceso a comandos que con un usuario normal no podríamos ejecutar ya que no tendríamos permisos y nos daría error.

2.-

2. Cambiamos de directorio al raíz
Con este comando cambiamos entre los directorios del sistema (es decir, las carpetas de tu móvil) y nos situamos en la capeta raíz ("/").

3.-

3. Montamos el sistema
Montamos el sistema de archivos en la carpeta raíz. Es posible que nos de un error aún haciéndolo todo correctamente, en ese caso lo único que tenemos que hacer es reiniciar el móvil y volver a empezar.

4.-

4. Añado una carpeta con el nombre "efs".
Añado una carpeta con el nombre "efs".

5.-

5. Monto unos archivos en la carpeta "efs"
OJO!! El código de la línea 5 ponerlo como esta arriba y no como aparece en la imagen porque no entraba y el principio no aparece.

6.-

6. Mostrar contenido del archivo perso.txt anteriormente creado
  Al montar antes los archivos en la carpeta "efs" se creo un archivo perso.txt y es el que leemos con el comando cat.

  Bien, si estamos en este paso y en la pantalla del móvil tenemos justo eso que aparece en la imagen anterior solo queda darle a intro para que lea el archivo y nos muestre su contenido que sera un código como este:

7. Archivo perso.txt leído.
  Cambiarán algunos números pero lo importante es poner los 8 primeros números que aparecen después del "#" que en este caso serían estos:

8. El código.
  Bien, ahora solo tenemos que copiar los 8 números que nos salgan, ese será nuestro código de liberación. Ahora simplemente ponemos la tarjeta SIM de otro operador, por ejemplo si yo soy de Orange pondría una de Vodafone, Movistar o cualquier otra. Encendemos el móvil, en vez de pedirnos el pin lo que nos pedirá será la clave de control de bloqueo de red, es ahí donde tenemos que meter esos 8 números de antes y el móvil será liberado automáticamente, y si nos sale que no se ha podido liberar, seguramente sea porque estamos sin cobertura en ese momento pero si se habrá liberado.

  Para saber si se ha liberado solamente tenemos que marcar en el menu de llamada lo siguiente: 
*#7465625#
 si ahí nos pone: bloqueo de red [OFF] entonces se ha liberado correctamente.

lunes, 4 de noviembre de 2013

INTRODUCCIÓN

  LESS es un preprocesador CSS (Cascading Style Sheet), es decir, creamos un código que al compilarlo nos generará código CSS. Existen otros preprocesadores como SASS, STYLUS o TURBINE, pero el aprendizaje de LESS es más sencillo.

  ¿Por qué utilizar un preprocesador en vez de escribir código CSS directamente? Pues muy sencillo, porque el código LESS es mucho más estructurado en su escritura y mucho mas fácil de mantener porque permite crear variables, funciones, estructuras de control, bucles, incluir archivos, ...

  En definitiva permite crear un código más lógico, organizado y fácil de mantener.

VARIABLES EN LESS

  La declaración de variables permite especificar los valores utilizados en un solo lugar y, a continuación, utilizarlos en toda la hoja de estilos, por lo que lo que antes podría ser un cambio en cientos de lineas será solo cambiar una línea de código.

1. Variables en LESS
MIXINS EN LESS

  Permite incluir todas las propiedades de una clase a otra clase con tan solo incluir el nombre de la clase como una de sus propiedades. Es igual que las variables pero para clases enteras. También puede comportarse como funciones, tomar argumentos como se ve en el ejemplo:

2. Mixins en LESS
REGLAS ANIDADAS

  En lugar de construir nombres de selectores grandes para especificar la herencia permite anidar selectores dentro de selectores. Esto hace que las hojas de estilos sean claras y tengan un estilo corto. Por ejemplo:

3. Reglas anidadas con LESS
FUNCIONES Y OPERACIONES
  ¿Son algunos elementos de la hoja de estilos proporcionales a otros elementos? Las operaciones te permiten añadir, restar, dividir y multiplicar valores de propiedades y colores, dándote el poder de crear complejas relaciones entre propiedades. Las operaciones no se deben efectuar dentro de paréntesis, a fin de garantizar la compatibilidad con CSS. Funciones de una correspondencia de uno a uno con código JavaScript, lo que permite manipular los valores como quieras.

4. Funciones y operaciones con LESS

jueves, 31 de octubre de 2013

Definición de CSS

  CSS, Hojas de Estilo en Cascada (Cascading Style Sheets), es un lenguaje de maquetación web utilizado para dotar a cualquier documento XML (HTML, XHTML, SVG, ... etc) de un aspecto y formato.

  Nació debido a que HTML (en un principio concebido para usos científicos) está limitado en cuanto a aplicar forma y estilo a un documento. Además, anteriormente, se mezclaba en el código HTML el contenido con las etiquetas para darle forma al documento, lo que hacia muy difícil su depuración.

  Alguna de las ventajas que supone esto son:

  • Se puede aplicar identado a la primera línea de un párrafo, aplicar el espacio entre líneas de dicho párrafo, definir visibilidad de elementos, definir margenes, subrayados, tachados.
  • Las unidades de medida pasaron de ser solo en píxeles o pulgadas, ahora se puede definir: píxeles(px), pulgadas(in), puntos(pt), centímetros(cm).
  • .... etc, etc, etc.

  Casi todos, por no decir todos, los navegadores actuales soportan esta tecnología.


Incorporación dentro de HTML

  Dicho lenguaje puede ser embebido dentro del documento HMTL:

CSS dentro ".HTML"
1. Código CSS dentro de un documento HTML

 o en un documento aparte con extensión ".css" y agregandolo al documento HTML de la siguiente manera:

2. Agregar documento (".css") externo al documento .html


(1) type: Tipo de archivo a adjuntar, en nuestro caso text/css.
(2) href: Dirección relativa o absoluta hacia el archivo ".css", es decir, la dirección a partir del documento ".html" que llama al documento ".css" o poniendo directamente la dirección URL del archivo.
(3) Tipo de medio donde se aplica el archivo css. 

Los tipos de medio disponibles son:
- All: Cualquier tipo de medio.
- Braille: medio relacionado con dispositivos táctiles braile.
- Embossed: Para impresoras braile.
- Handheld: para dispositivos de bolsillo o de mano que normalmente tienen una pantalla pequeña.
- Print: medio específico para cuando se imprimen documentos en la impresora. Desde la vista previa para imprimir que tienen los navegadores, generalmente en el menú de Archivo, también podemos ver el resultado de la página para impresión que utiliza los estilos CSS del tipo de media "print".
- Projection: tipo de medio que se aplica para las presentaciones que se muestran con proyector.
- Screen: medio que se utiliza para pantallas grandes, generalmente las pantallas de los ordenadores personales.
- Speech: medio para sintetizadores de voz.
- Tty: tipo de medio que se utiliza en dispositivos que tienen un tamaño fijo de carácter, como un teletipo, terminal, consola de comandos etc. En este tipo de media no se puede usar la unidad de medida de píxeles (px) porque todo lo que se puede mostrar es a nivel de carácter.
- Tv: para cuando se accede a una web desde un dispositivo de televisión.


Se pueden aplicar distintos @media dentro de un documento css, es decir, dentro de un mismo documento css pueden haber estilos asociados a medios distintos como por ejemplo que el estilo del párrafo visto desde una pantalla de un ordenador personal y desde un documento impreso sea distinto, podríamos especificar dichas diferencias de la siguiente manera:


3. Documento css: style.css

Si dichos estilos los hubiéramos hecho en un documento ".css" externo (style.css) y su localización en nuestro servidor fuera la misma que el documento que lo esta llamando (index.html) se incorporaría en este de dos posibles maneras:


4. Las dos posibles maneras de incluir el archivo anterior en el documento .html

Es decir, indicamos que los medios utilizados son print y screen.

  Dentro de las dos posibilidades (incluirlo dentro de la página ".html" o ponerlo en un documento aparte ".css") yo recomiendo la segunda manera ya que se crea un código mucho mas estructurado y legible, por lo tanto más fácil de modificar y mantener, y por eso a partir de ahora cada ejemplo o cada explicación dicho código lo pondré a parte (".css").

Sintaxis de CSS

  La sintaxis de CSS es realmente sencilla:

5. Sintaxis de CSS

Donde selector es el nombre de la clase/identificador. Se puede aplicar un mismo estilo a diferentes clases/identificadores en la misma declaracion, separando estos mediante comas.

La diferencia entre clase (class) y identificador (id), radica en que el primero (class) puede ser utilizado por uno o varios elementos HTML, mientras que el segundo solo (id) puede ser utilizado por un elemento HTML al cual identifica.

Para diferenciar un selector identificador de un selector clase, se antepone al nombre o bien "#" o bien ".". El primero indica que es un identificador y el segundo indicaría que es una clase.

Como ejemplo de todo lo anterior propongo crear una clase y un identificador con el nombre de "objeto":

6. Class e Id "objeto"

Al aplicar esta clase y este identificador respectivamente a un elemento HTML estamos proporcionandole a dicho elemento los atributos CSS anteriormente declarados.

7. Aplico la clase y el identificador objeto anteriormente declarado


Como dije anteriormente la diferencia entre estas dos declaraciones (que a primera vista crean el mismo div con las mismas propiedades) es que el primero queda identificado con el nombre "objeto" y ningún elemento más podrá identificarse con dicho nombre, mientras que en el segundo caso le aplicamos una clase "objeto" que podremos aplicar a tantos elementos queramos dentro del mismo documento.

La seudo clase sirve para identificar propiedades que tendrá el objeto al cual haga referencia el identificador/clase en determinados eventos (evento que no ha sido visitado, un evento visitado, ponerse encima de un elemento... etc.) o bajo determinadas circunstancias (ser el primer elemento,.. etc.). Por ejemplo si ponemos

8. Clase "objeto" con la seudo-class focus.

9. Aplico la clase anterior con la seudo-class añadida

En este ejemplo anterior, estamos indicando que el div al que le hemos aplicado la clase "objeto" adquirirá los atributos cuando tenga el foco de la página o en otras palabras cuando este seleccionado.

Las seudo clases (pseudo-class) disponibles son:
  • :first-child: Hace referencia al primer elemento de un conjunto por ejemplo en una lista <li>, sería el primer elemento de esa lista.
  • :link, :visited : Son seudo clases de enlace. Aplica los atributos cuando el enlace aún no ha sido visitado (:link) o cuando ya ha sido visitado (:visited).
  • :hover, :active, :focus: Son seudo clases dinámicas. :hover es cuando el ratón esta encima del elemento, :active es cuando el elemento esta activado, es decir, se hace click sobre el elemento y :focus el elemento tiene el foco de la pagina, es decir, esta seleccionado.
  • :lang: Es una seudo clase de idioma. Permite especificar el aspecto de los elementos de un determinado idioma.
  •  :target: Es una seudo clase de enlace. Se aplica cuando es un enlace objetivo, es decir, el enlace ha sido visitado en la acción inmediatamente anterior.
  • :root: Es una seudo clase estructural. Se aplica cuando es el elemento principal de un documento.
  • :empty: Es una seudo clase estructural. Se aplica cuando no tiene nodos hijos.
  • :only-child: Es una seudo clase estructural. Se aplica cuando no tiene nodos hermanos.
  • :only-of-type: Es una seudo clase estructural. Se aplica cuando tiene un selector unico entre sus hermanos.
  • :nth-of-type(n): Es una seudo clase estructural. Se aplica cuando es el nth elemento con ese selector.
  • :last-child:Es una seudo clase estructural. Se aplica cuando es el último nodo hijo de un elemento.
  • :first-of-type: Es una seudo clase estructural. Se aplica cuando es el primer elemento de su tipo de selector en el elemento primario.
  • :last-of-type: Es una seudo clase estructural. Se aplica cuando es el ultimo elemento de su tipo de selector en el elemento primario.
  • :not: Es una seudo clase estructural. Se aplica cuando no esta usando un selector específico.
Los seudo elementos (pseudo-element) disponibles son:
  • :first-letter: Aplica estilo a la primera letra de un elemento. Por ejemplo, si ponemos:
10. Estilo a la primera palabra de todos los párrafos de un documento .html


           Le aplicaremos el estilo a todas las primeras letras de todos los parrafos.

  • :first-line: Aplica estilo a la primera linea de un elemento. Por ejemplo si ponemos

11. Estilo a todas las primeras palabras de todos los párrafos de un documento .html



           Le aplicaremos el estilo a todas las primeras letras de todos los parrafos.

  • :before: Aplica estilo a elemento anterior a un elemento, o crea un elemento antes de un elemento. Por ejemplo:
12. Aplico color de fuente rojo al elemento html anterior a todos los párrafos de un documento .html

13. Coloco el texto hola antes de todos los párrafos de un documento .html y le aplico el color rojo
  • :after: Exactamente igual que :before pero en este caso con en elemento posterior a un elemento hmtl. Por ejemplo:


14. Le aplico el color de fuente rojo al elemento posterior a todos los párrafos de un documento .html

15. Coloco el texto hola después de todos los párrafos de un documento .html y le aplico el color rojo

lunes, 28 de octubre de 2013

Bienvenidos a mi blog.

Mi nombre es Jonatan T.C. (Ingeniero Técnico en Informática de Sistemas especializado programación) y con este blog pretendo contar mis experiencias como programador así como ir subiendo tutoriales y casos prácticos sobre problemas tanto de programación como de informática en general.

Para cualquier petición mandarme un correo a  desarrolladoresunidos@gmail.com intentare responder los más rápido posible (ya sea mediante correo o mediante entrada para ayudar a toda la comunidad), normalmente antes de pasadas 12 horas. No obstante, incluiré página de contacto en un futuro muy próximo :)

Gracias a todos vosotros y espero que sea de vuestro agrado!!!

 
Copyright © 2011 DesarrolladoresUnidos. Designed by Wpdesigner, blogger templates by Blog and Web