martes, 9 de julio de 2013

Realizar ventana de Pop Up

Comentaros que este script que os voy a poner a continuación ha de ir entre las etiquetas <head> y </head>. El código:
<script language=”JavaScript”>
function Abrir_ventana (pagina) {
var opciones=”toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no,          resizable=yes, width=640, height=480, top=100, left=100″;
mi_ventanapop=window.open(pagina,”",opciones);
}
</script>
Una vez declarada nuestro script, solo debemos de llamar a la función declarada, en esta ocasión sería “Abrir_ventana” la cual recibe el parametro pagina, que será la url a la que apunta. ¿Como se haría? Muy sencillo, esta vez el código se inserta entre las etiquetas <body> y </body>. Veamos la llamada:
<a href=”javascript:Abrir_ventana(‘vertutoriales.html’)”>Abrir ventana emergente – PopUp</a>

on eso ya tendríamos las dos partes conseguidas, pero vamos a ver algunos de los atributos de la función Abrir_ventana.
  • Toolbar: Si queremos la barra de herramientas.
  • Location: Si queremos la barra de direcciones.
  • Status: La barra de estado.
  • menubar: La barra de menú. 
  • scrollbars: Si queremos la barra de desplazamiento.
  • resizable: Si puede cambiar de tamaño.
  • width, height, top y left: Para el tamaño y posición de la ventana al abrir.

Además y para terminar os dejo como abrir el PopUp justo al abrirse la página, es muy sencillo, pero yo personalmente no recomiendo el uso. Solo debemos de insertar el siguiente código en la etiqueta <body>:
<body onload=”Abrir_ventana(‘tutorial.php)”>

Cuando queramos cerrar la ventana:

              mi_ventanapop.close();

lunes, 8 de julio de 2013

GRACIAS

Gracias a todos por vuestra dedicación, por vuestra actitud, por el interés, por la amabilidad por el cariño... Pero sobre todo GRACIAS por ponerme muy facil hacer lo que más me gusta: ENSEÑAR.
Han sido unos meses duros en lo personal, pero enormemente gratificantes en lo profesional, un curso que nunca olvidaré (aunque penséis que se lo digo a todos).
Sólo espero que lo mucho o lo poco que os haya podido enseñar os sirva para conseguir la meta profesional que deséais. Por mi parte sólo concluir con la letra de una canción que me encanta:

GRACIAS A LA VIDA, QUE ME HA DADO TANTO (aunque creo que no lo merezco)

Gracias a la vida que me ha dado tanto 
Me dio el corazón que agita su marco 
Cuando miro el fruto del cerebro humano, 
Cuando miro al bueno tan lejos del malo.


Script para Google Analytics

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-42294955-1', 'aprendiendoestoy.es');
  ga('send', 'pageview');

</script>

Para hacerlo en php, crea un archivo con el nombre  "analyticstracking.php" e incluye el código anterior.
Coloca en cada página que quieras seguir el siguiente código:

<?php include_once("analyticstracking.php") ?>

CACHEO DE PÁGINA EN 5 PASOS


1.

En el raiz de nuestra web crearemos los siguientes archivos: .htaccess, start_cache.php, end_cache.php, y create una carpeta llamada “cache_files”.

2.

Cambiar los permisos a la carpeta “cache_files” a 777.

3.

Dentro de nuestro archivo .htaccess, insertaremos estas dos líneas de código:
php_value auto_prepend_file /home/pepito/public_html/start_cache.php
php_value auto_append_file /home/pepito/public_html/end_cache.php
Deberás cambiar “/home/pepito/public_html/” por la ruta física donde esta albergado tu sitio.

4.

Introduciremos el siguiente código en el archivo “start_cache.php”. De nuevo cambiaremos “/home/pepito/public_html/” por la ruta física de tu sitio.
<?
//Algunos parametros de configuracion
$settings_cachedir = ‘/home/pepito/public_html/cache_files/’;
$settings_cachetime = 3600; //keep cache files for 3600 seconds (1 hour)
//Pagina php
$thispage = ‘http://’ . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$cachelink = $settings_cachedir.md5($thispage).”.html”;
if (@file_exists($cachelink)) {
$cachelink_time = @filemtime($cachelink);
if ((time() – $settings_cachetime) < $cachelink_time) { @readfile($cachelink);die(); }
}
ob_start();
?>

5.

Por último introducir este código en el archivo“end_cache.php”.
<?
$fp = fopen($cachelink, ‘w’);@fwrite($fp, ob_get_contents());@fclose($fp);ob_end_flush();
?>

domingo, 7 de julio de 2013

COMPRIMIR CÓDIGO WEB CON GZIP

Debemos configurar el archivo .htaccess (que está en nuestro servidor) de la siguiente forma:

1.- Para comprimir el código php incluir lo siguiente:


php_flag zlib.output_compression On 
php_value zlib.output_compression_level 2


2.- Para comprimir el css y los javascript (ya no sería con GZIP sino con DEFLATE):

<Files *.css>
SetOutputFilter DEFLATE

</Files>

<Files *.js>
SetOutputFilter DEFLATE

</Files>

3.- Para comprimir todo menos las imágenes (ya no sería con GZIP sino con DEFLATE)

AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml


Cualquiera de las dos técnicas son eficientes.

lunes, 1 de julio de 2013

LINKS PARA ANIMACIONES WEB

Aquí os dejos los links a los mejores proyectos de animaciones con CSS3. Saludos:

http://www.imaginaformacion.com/tutoriales/animaciones-usando-css3-transitions/
http://webintenta.com/css3-transitions-realizar-transiciones-con-css.html
http://webintenta.com/uploads/Files/122011/ej29112011_17/css3transition3.php
http://www.tutosytips.com/hablemos-de-la-propiedad-transforms-y-sus-funciones-en-css3/
http://aprendeweb.16mb.com/avanzados/anim/anim_5.php
http://www.mmfilesi.com/blog/efectos-especiales-con-css3-la-propiedad-transition/
http://santyweb.blogspot.com.es/2011/07/css3-propiedad-transition-crea.html
http://webintenta.com/css3-transitions-realizar-transiciones-con-css.html
http://webintenta.com/css3-animaciones.html
http://ksesocss.blogspot.com/2012/03/transitions-css3-guia-de-aproximacion-y.html
http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=CSS3TransicionesAnimaciones
http://www.centromex.com.ar/2012/09/nube-en-movimiento-con-keyframes-css3.html
http://mashi.tv/gallery

REDIRECCIÓN DE PÁGINAS CON PHP

Hola a todos:

En el módulo de PHP hemos visto la redirección de páginas usando header (Location:.......), pero eso supone el envío de cabeceras, algo que muchos servidores cuando las reciben duplicadas no soportan. Como formas alternativas para la redirección podemos usar las siguientes:

1.- Con JavaScript:

echo '<script type="text/javascript">window.location.href="pagina_destino.php";</script>'; 


2.- Con cabeceras meta:

print "<meta http-equiv="Refresh" content="segundos"; url="url destino"/>";


Espero que os sirva. 
Ya estamos en la recta final, ánimo que os queda muy poquito.

Saludos

Mónica

viernes, 21 de junio de 2013

TIPOS DE DATOS Y LONGITUD PHPMYADMIN



Tipos de datos en phpMyAdmin

1.1.- Tipos de datos en phpMyAdmin.

Los Tipos que tiene phpMyAdmin  (o el Sistema Gestor de Bases de Datos MySQL) son los siguientes:
Ilustración 25. Tipos de Datos.
Podemos encontrarlos en la lista desplegable que aparece en la pantalla en la que definimos los campos de una tabla, y estas son sus características:

a) Tipos de cadena:

·      Char(n): almacena una cadena de longitud fija. La cadena podrá contener desde 0 a 255 caracteres.
·      VarChar(n): almacena una cadena de longitud variable. La cadena podrá contener desde 0 a 255 caracteres.
Dentro de los tipos de cadena se pueden distinguir otros dos subtipos, los tipo Test y los tipo BLOB (Binary large Object)
La diferencia entre un tipo y otro es el tratamiento que reciben a la hora de realizar ordenamientos y comparaciones. Mientras que el tipo test se ordena sin tener en cuenta las Mayúsculas y las minúsculas, el tipo BLOB se ordena teniéndolas en cuenta.
Los tipos BLOB se utilizan para almacenar datos binarios como pueden ser ficheros.
·      TinyText y TinyBlob: Columna con una longitud máxima de 255 caracteres.
·      Blob y Text: un texto con un máximo de 65535 caracteres.
·      MediumBlob y MediumText: un texto con un máximo de 16.777.215 caracteres.
·      LongBlob y LongText: un texto con un máximo de caracteres 4.294.967.295. Hay que tener en cuenta que debido a los protocolos de comunicación los paquetes pueden tener un máximo de 16 Mb.
·      Enum: campo que puede tener un único valor de una lista que se especifica. El tipo Enum acepta hasta 65535 valores distintos
·      Set: un campo que puede contener ninguno, uno ó varios valores de una lista. La lista puede tener un máximo de 64 valores.

Tamaños de almacenamiento:
Tipo de campo
Tamaño de Almacenamiento
CHAR(n)
n bytes
VARCHAR(n)
n +1 bytes
TINYBLOB, TINYTEXT
Longitud + 1 bytes
BLOB, TEXT
Longitud +2 bytes
MEDIUMBLOB, MEDIUMTEXT
Longitud +3 bytes
LONGBLOB, LONGTEXT
Longitud +4 bytes
ENUM('value1','value2',...)
1 ó dos bytes dependiendo del número de valores
SET('value1','value2',...)
1, 2, 3, 4 ó 8 bytes, dependiendo del número de valores
Diferencia de almacenamiento entre los tipos Char y VarChar:
Valor
CHAR(4)
Almacenamiento
VARCHAR(4)
Almacenamiento
''
''
4 bytes
"
1 byte
'ab'
'ab  '
4 bytes
'ab'
3 bytes
'abcd'
'abcd'
4 bytes
'abcd'
5 bytes
'abcdefgh'
'abcd'
4 bytes
'abcd'
5 bytes

b) Tipos numéricos:

Existen tipos de datos numéricos, que se pueden dividir en dos grandes grupos, los que están en coma flotante (con decimales) y los que no.
·      TinyInt: es un número entero con o sin signo. Con signo el rango de valores válidos va desde -128 a 127. Sin signo, el rango de valores es de 0 a 255
·      Bit ó Bool: un número entero que puede ser 0 ó 1
·      SmallInt: número entero con o sin signo. Con signo el rango de valores va desde -32768 a 32767. Sin signo, el rango de valores es de 0 a 65535.
·      MediumInt: número entero con o sin signo. Con signo el rango de valores va desde -8.388.608 a 8.388.607. Sin signo el rango va desde 0 a16777215.
·      IntegerInt: número entero con o sin signo. Con signo el rango de valores va desde -2147483648 a 2147483647. Sin signo el rango va desde 0 a 429.4967.295
·      BigInt: número entero con o sin signo. Con signo el rango de valores va desde -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807. Sin signo el rango va desde 0 a 18.446.744.073.709.551.615.
·      Float: número pequeño en coma flotante de precisión simple. Los valores válidos van desde -3.402823466E+38 a -1.175494351E-38, 0 y desde 1.175494351E-38 a 3.402823466E+38.
·      xRealDouble: número en coma flotante de precisión doble. Los valores permitidos van desde -1.7976931348623157E+308 a -2.2250738585072014E-308, 0 y desde 2.2250738585072014E-308 a 1.7976931348623157E+308
·      DecimalDecNumeric: Número en coma flotante desempaquetado. El número se almacena como una cadena.
Tamaños de almacenamiento:
Tipo de Campo
Tamaño de Almacenamiento
TINYINT
1 byte
SMALLINT
2 bytes
MEDIUMINT
3 bytes
INT
4 bytes
INTEGER
4 bytes
BIGINT
8 bytes
FLOAT(X)
4 ú 8 bytes
FLOAT
4 bytes
DOUBLE
8 bytes
DOUBLE PRECISION
8 bytes
REAL
8 bytes
DECIMAL(M,D)
M+2 bytes sí D > 0, M+1 bytes sí D = 0
NUMERIC(M,D)
M+2 bytes if D > 0, M+1 bytes if D = 0