MySQL backup for all databases on one server

Avatar de jonjimJonjim's Workshop Blog

So this week one of my web servers had a suicidal/emo moment and corrupted and destroyed most of MySQL databases. Unfortunately many of them were not developed by myself or were development sites for which there was no backup procedure. A lot of data has been lost this week.

This sucks.

So to highlight that age old saying, BACK UP EVERYTHING

Ver la entrada original 351 palabras más

Los microdatos – HTML5 Tips

Otra de las novedades del HTML5 son los microdatos. Estos son una manera de describir un determinado tipo de información, como eventos, información personal o de la empresa.

Los microdatos usan atributos simples en las etiquetas html (normalmente <span> o <div>) para asignar una estructura o información a esos datos. En el siguiente ejemplo tenemos información sobre una persona y su empresa


<div> My name is Bob Smith but people call me Smithy. Here is my home page: <a href="http://www.example.com">www.example.com</a> I live in Albuquerque, NM and work as an engineer at ACME Corp. </div>

Este mismo ejemplo etiquetado con microdatos quedaria asi


<div itemscope itemtype="http://data-vocabulary.org/Person">

My name is <span itemprop="name">Bob Smith</span>but people call me <span itemprop="nickname">Smithy</span>.

Here is my home page: <a href="http://www.example.com" itemprop="url">www.example.com</a> I live in Albuquerque, NM and work as an <span itemprop="title">engineer</span> at <span itemprop="affiliation">ACME Corp</span>. </div>

En la primera linea el itemscope indica el que el contenido del div es de tipo Person y cada una de las propiedades de la propiedad esta definida por el atributo itemprop, por ejemplo el itemprop=’name’ describe el nombre de la persona.

Mas información:

http://dev.w3.org/html5/md/

https://support.google.com/webmasters/answer/176035?hl=en

Enhanced by Zemanta

Funciones anonimas en PHP – PHP Tips

El otro día en la entrada cargando clases php automaticamente en el ultimo ejemplo usaba una función anomima o clausura para lanzar la función spl.

La definición que nos da la documentación es:

Las funciones anónimas, también conocidas como clausuras (closures), permiten la creación de funciones que no tienen un nombre especificado.
 

Estas funciones fueron introducidas en PHP 5.3 y su uso es prácticamente igual que cuando definimos funciones en Javascript.


//Ejemplo de definición de función en Javascript

var miFuncion = function (nombre) {

document.write('Tu nombre es ' + nombre);

};

miFuncion('Ruben'); // Escribe 'Tu nombre es Ruben'


// Ejemplo de definición de función anónima en PHP

$miFuncion = function ($nombre) {

echo 'Tu nombre es '. $nombre;

}

$miFuncion('Ruben'); //Escribe 'Tu nombre es Ruben'

Se puede ver en los dos ejemplos que el uso y definición de ambas es prácticamente igual. Otro de los usos para estas funciones es como callback en funciones tengan esa opción.


echo preg_replace_callback('~-([a-z])~', function ($coincidencia) {
return strtoupper($coincidencia[1]);
}, 'hola-mundo');
// Devuelve holaMundo

Para mas información sobre las funciones anónimas http://www.php.net/manual/es/functions.anonymous.php

Enhanced by Zemanta

Obtener el valor seleccionado en un Select con jQuery – jQuery Tips

JQueryUIImaginemos que queremos conocer que valor hay seleccionado en un campo select, para comprobar su valor o lo que necesitemos. Para hacer esto utilizaremos val().


<select id='ciudades' name='ciudades'>

<option value='BAR'>Barcelona</option>

<option value='MAD'>Madrid</option>

<option value='ZGZ'>Zaragoza</option>

</select>

<script>

$('#ciudades').change(function(){

var ciudad = $(this).val()

alert('Has seleccionado ' + ciudad);

});
</script>

En este ejemplo nos aparece un select en el cual nos da la opción de seleccionar entre tres ciudades, cuando cambiemos el valor nos mostrara un mensaje en pantalla en el cual nos mostrara el valor del value de la ciudad seleccionada.

Enhanced by Zemanta

10 Mysql query optimization good practices

Avatar de Ananda Raj PandeyHow To Tutorials

Writing a good optimized sql queries will help to reduce server load on MySQL and also improves the load time and server response time for the web page.
Few tips to optimize MySQL queries are below:

1. Select only required colums:

Selecting every thing from the table will cause more memory uses and thus utilize more server resources.
BAD:
SELECT * FROM <TABLE>;

GOOD:

SELECT name, age FROM <TABLE>;

Only select required fields to have better performance.

2. Indexing correctly:

Index is not only for primary key, we should index  field that is search contineously, and also the joined column.

Example:

Select name, age from table where age=32 and name =’alex’ ;

Select name, age,group from table1 left join table2 on table1.groupid=table.group where age=32 and name=’alex’;

In first case, name and age should be indexed. ( Way of indexing will be covered in next blog).
In second case, along…

Ver la entrada original 462 palabras más

How to create pagination in PHP and MySQL with AJAX

Avatar de ikhlaqueikhlaque

I have wrote an article on pagination with a simple class and many users like it and download it so now i have decided to write its and updated version with AJAX.

In this article i am going to explain you how to create pagination in PHP & MySQL with AJAX for your websites.

Pagination is a very important part in your websites reporting and this article will help you to create it very very simple.

For More Information

PHPGANG

Ver la entrada original

MySQL Connection in Java

Add your thoughts here… (optional)

Avatar de Devesh SharmaDevesh Sharma

Here is an example to show how to connect to MySQL database in Java.

First things first. If you are using Maven, please add the MySQL dependency in your pom.xml file. The dependency looks like this:

If you are NOT using Maven, you need to download the MySQL JDBC driver. The driver can be found here. The download contains a JAR file which you need to add to your classpath.

That is it! Here is the code to connect to MySQL database in Java:

Ver la entrada original

Zend Server con soporte Xdebug en Linux – PHP Tips

Cuando se trata de depurar nuestras aplicaciones con PHP, están como dos opciones principales ZendDebugger y XDebug. Dependiendo del IDE que utilicemos, y del servidor que tengamos utilizaremos una u otra. Por ejemplo si usamos Zend Studio y Zend Server, la opción clara es Zend Debugger, pero si usamos como IDE Netbeans, este no tiene soporte para Zend Debugger, solo para XDebug.

De primeras casi recomendaría olvidarnos de instalar los dos depuradores a la vez, ya que lo normal es que den problemas, así que hay que decidirse por uno u otro.

Si tenemos Zend Server y queremos habilitar Xdebug, hay que deshabilitar Zend Debugger. Para instalarlo y ponerlo en marcha hay que hacer lo siguiente:

En el servidor

Otra de las ‘particularidades’ de Zend Server es que los binarios PHP los ubica en su propio directorio de trabajo y otro problema suele ser tener varios binarios PHP en nuestros servidor,  para comprobar que binarios estamos usando utilizaremos la herramienta which


which php

/usr/local/zend/bin/php

Si nos sale el resultado de antes quiere decir que estamos usando el PHP que viene con Zend Server, si sale /usr/bin/php, igual estamos probando otro.

Otra cosa que podemos comprobar en caso que nos devuelva la ruta /usr/bin/php es ir a ese directorio y hacer un ls -lh ph* para ver si el binario php es un enlace a /usr/local/zend/bin/php y  si phpize apunta al directorio de zend.

Otra opción, mas sencilla es ir al directorio /usr/local/zend/bin y ejecutar el comando con ./ asi se ejecutara ese comando y no el del path.

Asi instalariamos el xdebug:


sudo pecl install xdebug

Una vez instalado necesitamos comentar una linea en el archivo de configuracion debugger.ini que esta en /usr/local/zend/etc/conf.d/debugger.ini y agregar otra

;zend_extension_manager.dir.debugger=/usr/local/zend/lib/debugger

zend_extension=/usr/local/zend/lib/php_extensions/xdebug.so

Esta linea esta situada la ultima, para comentarla simplemente agregamos un ; delante
Una vez hecho esto reiniciamos el servidor y comprobamos en el phpinfo o ejecutando php -i | grep xdebug si el xdebug esta cargado.

Esta entrada esta basada en la entrada Zend Server with Xdebug support on Linux | My Science Is Better.

Enhanced by Zemanta

Editor de RegExp, expresiones regulares Online – Utilidades Web

He encontrado este editor online de expresiones regulares que es muy completo y muy útil. Tiene ejemplos de funciones y va analizando lo que vas poniendo poco a poco, de tal manera que se puede ir interpretando que va ha hacer el patrón.

RegExr.

Enhanced by Zemanta

Cargando clases PHP automaticamente – PHP Tips

Una de las cosas que pueden resultar mas tediosas, por lo menos para mi, a la hora de programar es ir cargando las dependencias necesarias del fichero para que todo funcione. Con PHP podemos usar las funciones de auto carga para que cada vez que se llame a una clase esta se cargue.

Supongamos el siguiente escenario, tenemos todas las clases en el directorio clases y el fichero donde se define cada una de estas tiene el mismo nombre que la clase. Podríamos crear la siguiente función y con esta cuando creemos un nuevo objeto de la clase se cargara automáticamente.


function __autoload($clase) {
    include 'clases/' . $clase . '.php';
}

A partir de  PHP 5 >= 5.1.2 podemos usar la función spl_autoload_register para la carga automática de clases.


function miAutocargador($clase) {
    include 'clases/' . $clase . '.php';
}

spl_autoload_register('miAutocargador');

Y para simplificarlo un poco mas, a partir de la versión PHP 5.3 podemos lanzar una función anónima para realizar lo mismo de antes


spl_autoload_register(function ($clase) {
    include 'clases/' . $clase . '.php';
});

Para que esto funcione, tiene que cargarse esta función en el fichero en el que queramos que se ejecute la carga, lo ideal en estos casos es si se tiene un fichero de constantes o funciones auxiliares, que se utilicen en todo el proyecto incluir esta función en este.

Mas información:

http://www.php.net/manual/es/function.spl-autoload-register.php

Enhanced by Zemanta