Recently Posted

advertisement


Archivo para la categoría ‘Programación web’ .


Algunos consejos de optimización para MySQL

MySQL

Revisando unos papeles he encontrado una vieja “chuleta” en la que se explica como optimizar nuestro código SQL para realizar las consultas rápidamente :) .

  • Búsqueda de palabras

/* Muy rápida */
SELECT * FROM tabla WHERE MATCH (`campo`) AGAINST ('palabra')

/* Rápida */
SELECT * FROM tabla WHERE MATCH (`campo`) AGAINST (‘+palabra’ IN BOOLEAN MODE)

/* Lentas */
SELECT * FROM tabla WHERE RLIKE ‘(^| +)palabra($| +)’
/* o */
SELECT * FROM tabla WHERE
RLIKE ‘([[:space:]]|[[:<:]])palabra([[:space:]]|[[:>:]])’

  • Búsquedas contenidas

/* Muy rápida */
SELECT * FROM tabla WHERE MATCH (`campo`) AGAINST ('palabra*' IN BOOLEAN MODE)

/* Rápida */
SELECT * FROM tabla WHERE FIELD LIKE ‘palabra%’

/* Lentas */
SELECT * FROM tabla WHERE MATCH (`campo`) AGAINST (‘*palabra*’ IN BOOLEAN MODE)
/* o */
SELECT * FROM tabla WHERE campo LIKE ‘%palabra%’

  • Número de registros

/* Muy rápida */
SELECT SQL_CALC_FOUND_ROWS * FROM tabla WHERE condición LIMIT 0, 10
SELECT FOUND_ROWS()

/* Rápido */
SELECT * FROM tabla WHERE condición LIMIT 0, 10
SELECT COUNT(clave) FROM TABLE WHERE condición

PD. No se la página de la que lo saqué en su momento, si alguien lo sabe que lo diga que se añade a la entrada ;) .


Reparto del tiempo de un desarrollador web

Navegando por internet he visto un gráfico que nos ilustra con bastante precisión en que dedicamos el tiempo mientras desarrollamos una página web :D .

Webdesign


CSS para formatear sitios por defecto

CSS Reset es un pequeño trozo de código que permite formatear todos los estilos por defecto, son muy útiles para evitar posibles problemas a la hora de maquetear un sitio web.

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;
}
/* remember to define focus styles! */
:focus {
outline: 0;
}
body {
line-height: 1;
color: black;
background: white;
}
ol, ul {
list-style: none;
}
/* tables still need ‘cellspacing=”0″‘ in the markup */
table {
border-collapse: separate;
border-spacing: 0;
}
caption, th, td {
text-align: left;
font-weight: normal;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: “”;
}
blockquote, q {
quotes: “” “”;
}

Leído en: Kabytes.


10 hacks CSS para que nuestras páginas se vean bien en varios navegadores

Muchas veces cuando diseñamos una página web nos encontramos con el problema de que en algunos navegadores (el 99% de las veces es Internet Explorer) nuestro CSS no se ve correctamente. Para solucionar estos problemas stylizedweb ha publicado una lista de 10 hacks para que nuestros diseños se vean correctamente en varios navegadores :) .

  • Vertical align div
  • Min-Height
  • PNG transparency
  • Autoclear
  • Reset CSS
  • Scrolling Render IE
  • Opacity
  • PRE Tag
  • Li Background Repeat IE
  • Good to know

Acceder a los hacks.


Una de chuletas informáticas…

Cheat-Sheets.org es un enorme recopilatorio de enlaces hacía chuletas, guías de información rápida, trucos y resúmenes para un montón de lenguajes de programación y otras utilidades. Tenemos desde información para .NET hasta información sobre Doctypes, ruby, sql, ubuntu y un largo etcétera. Un baúl de enlaces hacía información interesante que nos puede venir bien en cualquier momento.Enlace: Cheat-Sheets.org

Vía: diarioTHC.


Gráficos web usando CSS

Para utilizar estos gráficos debemos descargar el css que tiene un peso aproximado de 5 KB y aplicarlo, las graficas pueden utilizar además de un color de plano imágenes, eso esta bueno para lograr efectos degradados, sombras, etc.

Graficos CSS

Web: Pure CSS Data Chart

Vía: Kabytes.


Geany, ese gran pequeño editor

Geany es el perfecto termino medio entre un editor de textos y un IDE. Incluye las funciones básicas como númeración automática de las líneas, resaltado de código y autocompletado. Admite una amplia lista de tipos de ficheros, entre los que se incluyen C, C++, php, HTML, CSS Pero además posee funciones de compilación e incluso, en la versión para Linux, podemos emular una terminal sin salir del Geany con el que compilar nuestro código y ejecutarlo. Así, sin más, podemos editar y probar el código sin salir de Geany con lo que es muy productivo y ligero de usar.

Existen versiones para Linux y para Windows, para este último es necesario instalar además las librerias GTK.

Leído en: Bitelia.


Animador contra animación

Para que luego digan que Flash es un lenguaje que no es revoltoso :P .


Crear archivos zip con PHP

En esta ocasión veremos la forma de crear archivos comprimidos en formato ZIP. Para este ejemplo utilizaremos la clase zipfile escrita por Eric Mueller y muy bien explicada en Creating ZIP files with PHP.

Descargando la clase zipfile

Lo primero es descargar la clase zipfile desde zipfile.inc.txt y renombrarla a zipfile.php. Esta clase tiene dos metodos add_dir() y add_file() que permite agregar una carpeta o un archivo al zip que se esta creando.

Creando nuestro primer ZIP

Lo primero es incluir el archivo recién descargado, luego de ello creamos una instancia de la clase, para este ejemplo a la instancia lo llamamos $zipfile. Luego de ello agregamos un archivo de la siguiente forma.

  1. require (“zipfile.php”);

  2. $zipfile = new zipfile();

  3. $zipfile->add_file(implode(“”,file(“img01.jpg”)), “foto.jpg”);

Nótese que estamos agregando un archivo llamado img01.jpg y al momento de incluirlo en el zip lo estamos renombrando a foto.jpg. Hasta este punto hemos creado un archivo zip, el siguiente paso es enviarlo al cliente, para ello agregamos headers indicando el tipo de archivo y finalmente imprimimos el archivo:

  1. require (“zipfile.php”);

  2. $zipfile = new zipfile();

  3. $zipfile->add_file(implode(“”,file(“img01.jpg”)), “foto.jpg”);

  4.  

  5. header(“Content-type: application/octet-stream”);

  6. header(“Content-disposition: attachment; filename=zipfile.zip”);

  7. echo $zipfile->file();

El resultado del ejemplo lo pueden ver en http://samples.unijimpe.net/php-zip/.

Agregando carpetas al ZIP
En el caso que agregamos varios archivos y deseamos agruparlas en una carpeta, podemos utilizar el metodo add_folder. Luego de ello agregamos los archivos a la carpeta de la siguiente forma:

  1. require (“zipfile.php”);

  2. $zipfile = new zipfile();

  3. $zipfile->add_dir(“img/”);

  4. $zipfile->add_file(implode(“”,file(“img01.jpg”)), “img/01.jpg”);

  5. $zipfile->add_file(implode(“”,file(“img02.jpg”)), “img/02.jpg”);

  6. $zipfile->add_file(implode(“”,file(“img03.jpg”)), “img/03.jpg”);

  7.  

  8. header(“Content-type: application/octet-stream”);

  9. header(“Content-disposition: attachment; filename=fotos.zip”);

  10. echo $zipfile->file();

Como ven agregar carpetas y multiples archivos es muy sencillo, incluso se pueden renombrar los archivos al momento de agregarlos al archivo zip. El resultado de este ejemplo lo pueden ver en: http://samples.unijimpe.net/php-zip/zipfolder.php.

Leído en Unijimpe.


Voz desde texto con PHP y Linux

En este artículo vamos a explicar una forma de generar un archivo de audio a partir de un texto determinado con Linux (en este caso Ubuntu) y PHP.

1.-Instalamos Festival, que es el programa con el cual vamos a generar el fichero de audio a partir del texto:

apt-get install festival

2.-Una vez instalado, dispondremos de la utilidad de línea de comando text2wave que funciona de la siguiente manera:

# text2wave archivo.txt -o archivo.wav 

Para no tener que crear un archivo de texto cada vez utilicemos el programa usaremos tuberias:

# echo "hola amigo" | text2wave -o archivo.wav 

El código PHP

Ahora nuestro servidor está listo para generar archivos de voz desde un texto, lo único que tenemos que hacer es llamar al comando text2voice desde PHP con la función exec:

<?php
exec ( 'echo "hola amigo" | text2wave -o file.wav' );
?>

Para que veais un ejemplo más complejo, voy a meterle un formulario y un enlace al archivo generado:
<?php
error_reporting ( E_ALL );
ini_set ( 'display_errors', True );
if ( isset ( $_REQUEST['text'] ) ) {
$speechfile = "speech/".time().".wav";
$curDir = '/var/www/speech/';
exec ( 'echo "'. escapeshellarg ( utf8_decode ( $_REQUEST['text'] ) ) . '" | text2wave -o ' . $curDir . $speechfile );
?><p>El archivo generado se <a href="<?php
echo $speechfile;
?>">encuentra aquí</a></p><?php
}
?>
<form method="POST">
<textarea name="text" cols="70"></textarea><br />
<input type="submit">
</form>

Fuente original: ProgramacionWeb