sábado, 12 de diciembre de 2015

Mejores canciones rusas para bailar o escuchar

Rusia se pondrá en los ojos del mundo cuando sea el mundial de futbol en 2018. Seguramente has empezado a escuchar de Rusia cada vez con más frecuencia por una u otra razón.

Si eres de los que está estudiando ruso, que se interesa por conocer otro tipo de música en otro idioma poco común ... Aquí te muestro mi selección de tracks de la mejor música rusa:

* Градусы - Привычка сбегать из дома (Official Remix) - 3:33
* Елка – Нарисуй Мне Небо (Vini Remix) - 4:09
* DJ Nil & Mischa – Не Покидай (Original Mix) - 5:01
* Syntheticsax & Artur Q.S.P. & Крошка Bi-Bi (Sofamusic) - Stop - 4:13
* Siatria – Моя Москва (prod. by Shaplin) - 3:43
* Viola Мирова – Небо ( beatfoot records) (promodj.com) - 4:15
* Astero – Мы Вместе (Radio Mix) - 3:05
* Юлия Степная – Небо небушко - 2:14
* Geneva 8-96 vs Syntheticsax – Поверь Мне (Radio Edit) - 3:42
* Dj Smash – Между небом и землой - 3:51
* Vesna feat. Юрий Усачев – Для Чего - 3:27
* Zhanelya – Разбиты зеркала (Cj Fedoroff Rmx 2010) - 3:24
* Дмитрий Филатов – Утром Я Солнце - 3:10
* Юлия Образцова – Зимуй один - 3:12
* Карина Кокс & ВИА Сливки – Летняя Москва (OST к.ф Жара) - 3:41
* Ксюша Иванова – Горько! - 3:27
* Женя Рассказова – Как мало для счастья надо - 3:52
* Hacker feat. Mongold – Летим - 4:05
* Rodion Suleymanov & Alex Sample – Текила (Original Mix) - 6:28



* скайп – друг - 3:59                           ~ (Me parece que esta canción está en ukraniano)

Escuchar música rusa ayuda mucho a que aprendas más rápido ruso. También ayuda a que te familiarices con el acento ruso.

Actualizaré constantemente esta lista.

martes, 8 de diciembre de 2015

Implementar botón bootstrap para volver a la página anterior

Si deseas poner, digamos, un botón bootstrap para cancelar una acción determinada llevándote a la página anterior, te muestro el código para implementarlo.

¡Es todo! ☺

domingo, 29 de noviembre de 2015

Cómo cambiar el texto de un botón bootstrap con jQuery y mostrar un ícono de cargando o procesando al darle clic

Para hacer que un botón, al darle clic, se deshabilite, cambie el texto y aparezca un ícono de cargando, hay que hacer lo siguiente:

  1. Pongamos el botón bootstrap en nuestra vista o página. Asimismo agreguémosle un identificador:
  2. Consigamos un ícono que dé a entender que se está procesando la acción. Por ejemplo, buscando con Google tenemos estos
  3. Agreguemos el siguiente código javascript en la página o vista:
    /*Cambiar el texto del botón de actualización y agregar un ajax loader image cuando se le da clic*/
        $('#updatebtn').click(function() {
            var img_route = "{{assetsUrl}}img/ajax-loader2.gif";/*Ruta en donde guardamos la imagen del ajax loader*/
            $('#updatebtn').attr("disabled", true).html(' Actualizando ... espere ...');
            $(this).parents('form').submit();
        });
    

domingo, 8 de noviembre de 2015

How to implement ajax in Slim Framework

Let's say we just want to use ajax in order to enable or disable a user's account right in the view.

Using ajax in Slim Framework


In this case, I am using Twig templating. This register login system comes from a youtube codesource course on youtube.

The ajax call only means changing a single boolean value in the database, that is to say, active equals either true or false (1 or 0).

I will explain how to transfer the csrf token through the ajax call so that we will not get the token mismatch exception.

I got the switch on / off from http://www.bootstrap-switch.org/.

Here goes the ajax and see how I pass the token to the controller:
/*Referencias: https://www.codecourse.com/forum/topics/use-jquery-ajax-post-with-the-authentication-series/527*/
    $(document).ready(function(){
        $("[name='my-checkbox']").bootstrapSwitch({
            'size' : 'mini',
            'onColor':'success',
            'offColor':'danger',
            onSwitchChange(event, state) {
                //console.log('switched!. State: '+state);
                /*Obtener el id*/
                var id = $(this).attr('id').split('-');
                $.ajax({
                    data: {state: state,{{ csrf_key }}: "{{ csrf_token }}",id:id[1]},
                    type: "POST",
                    dataType: "json",
                    headers: { "cache-control": "no-cache" },
                    url: "users/activation"
                });//fin de ajax
            }
        });

To be continued...

miércoles, 4 de noviembre de 2015

Copiar columnas y datos de una base de datos a otra en mysql

Para copiar información (datos en columnas) que están dentro de una tabla A en una base de datos A, la cual quieres copiar a otra base de datos B dentro de una tabla en esa BD, lo que tienes que hacer es lo siguiente:

Para el caso de que la tabla destino esté vacía, necesitarás de una sentencia INSERT:
INSERT INTO basededatos1.tabla1 (columna1a, columna1b, columna1c)
SELECT column2a, 'un_valor', 'otro_valor' FROM basededatos2.tabla2

En donde basededatos1 es la BD destino y basededatos2 es la BD origen.

Y para el caso de que la tabla destino ya tenga otra información (incluso parcial), lo que necesitas es una sentencia de actualización UPDATE:
UPDATE basededatos1.tabla1 alias1 JOIN basededatos2.tabla2 alias2 
    ON alias1.tabla1.id = alias2.tabla2.id
SET alias1.columna1 = alias2.columna1,
    alias1.columna2 = alias2.columna2,
    alias1.columnaN = alias2.columnaN

En donde basededatos1 es la BD destino y basededatos2 es la BD origen.

sábado, 17 de octubre de 2015

Upload images or profile pictures with Slim Framework in PHP

I will explain how to upload profile pictures or images in Slim Framework in PHP.

I am extending this functionality of the register login system youtube tutorial presented by Alex Garrett from codecourse.com.

Adding the upload file functionality in Slim Framework
What  the extended functionality does is:

martes, 6 de octubre de 2015

Validar la CURP de México en PHP

Aquí les presento una función que he creado para validar la CURP. Esto lo hice basándome en la validación del RFC de México en PHP.

El código es el siguiente:
function validate_curp($valor) {     
     if(strlen($valor)==18){         
        $letras     = substr($valor, 0, 4);
        $numeros    = substr($valor, 4, 6);         
        $sexo       = substr($valor, 10, 1);
        $mxState    = substr($valor, 11, 2); 
        $letras2    = substr($valor, 13, 3); 
        $homoclave  = substr($valor, 16, 2);
          if(ctype_alpha($letras) && ctype_alpha($letras2) && ctype_digit($numeros) && ctype_digit($homoclave) && is_mx_state($mxState) && is_sexo_curp($sexo)){ 
            return true; 
        }         
    return false;
     }else{
         return false; 
    } 
}

Asimismo, he creado una función auxiliar para validar las siglas de los Estados de la República Mexicana (la cual es llamada por la función anterior de la CURP):
function is_mx_state($state){     
    $mxStates = [         
        'AS','BS','CL','CS','DF','GT',         
        'HG','MC','MS','NL','PL','QR',         
        'SL','TC','TL','YN','NE','BC',         
        'CC','CM','CH','DG','GR','JC',         
        'MN','NT','OC','QT','SP','SR',         
        'TS','VZ','ZS'     
    ];     
    if(in_array(strtoupper($state),$mxStates)){         
        return true;     
    }     
    return false; 
}

Y otra función para validar el sexo de la persona:
function is_sexo_curp($sexo){     
    $sexoCurp = ['H','M'];     
    if(in_array(strtoupper($sexo),$sexoCurp)){         
       return true;     
    }     
    return false; 
}
Ahora, a manera de ejemplo, para utilizar la función principal:
$la_curp = 'BADD110313HCMLNS09';
//Validar la Curp
if(validate_curp($la_curp)){
 echo '

La CURP '.$la_curp.' es válida

'; }else{ echo '

La CURP '.$la_curp.' es inválida

'; }
¡Es todo!

viernes, 25 de septiembre de 2015

Mejores canciones para bailar Zouk


Hay muchísimas canciones de zouk y muy buenas :)
El problema es que no conocemos el nombre de siquiera algunas de ellas.
Pero si no conoces el nombre de alguna de ellas para tener en tu repertorio, aquí te muestro mi selección:

Lynnsha - Elle et moi - 4:11
Ne-Yo - Miss Independent - 3:53
Sindy ft. La Fouine - Sans Rancune - 3:20
Tony Parker ft. Rickwel - Premier love - 3:34
Sindy - Je M'en Fous - 3:21
Paulo Mac - Mais que prazer - 4:24
Sindy - Est-ce Que Tu Me Suis? - 3:07
Nelson Freitas ft. Eddy Parker & Crucial - All upon you - 4:10

Mi Libro: 💃🏻"Liga mientras bailas"🕺🏻 ya a está a la venta!


Quizás también te interese:

Mejores canciones para bailar KIZOMBA

Mejores canciones para bailar SALSA

Mejores canciones para bailar CUMBIA

Mejores canciones para bailar BACHATA

Coreografías para bailar BACHATA💃

miércoles, 23 de septiembre de 2015

Convertir datos de CSV a MySQL


He puesto a su disposición de un convertidor de csv a mysql en línea.

Todos los datos deben estar en renglones y separados por coma (columnas).
En el primer renglón se deben colocar los nombres de las columnas y en los siguientes renglones se ponen los datos.
Cabe destacar que el último renglón debe quedar vacío. De no ser así, los datos del último renglón no serán tomados en cuenta.

Entonces el formato debe quedar como se muestra a continuación:

martes, 22 de septiembre de 2015

Cómo actualizar phpmyadmin de XAMPP en Mac OS

¿Tienes instalado el XAMPP en tu Mac y deseas actualizar tu phpmyadmin? Sigue estos pasos:

Bajamos el phpmyadmin.zip

Bajando la última versión de phpmyadmin para mac

lunes, 7 de septiembre de 2015

PHP Storm 9 - Visualizar caracteres en español UTF-8

Por default, PHP Storm 9 no tiene el UTF-8 configurado, por lo que, al poner caracteres en español, no aparecerán en la página y sólo verán signos de interrogación.
Para ello ir a las configuraciones (settings), editor, File Encodings.

Seleccionar UTF-8.

Cambiando la codificación a utf8 en phpstorm 9


Finalmente hay que reiniciar el php storm 9.

Solución al error SQLSTATE[42000]: Syntax error or access violation: 1142 command denied to user en php artisan de Laravel

Este error se refiere a que el usuario en cuestión de la base de datos no cuenta con los permisos de creación de una nueva tabla en la base de datos.

En phpmyadmin, por ejemplo, a dicho usuario puedes otorgarle los permisos de creación (CREATE, y DROP). El drop es también necesario para que php artisan pueda hacer ROLLBACK o RESET (borrar tablas o migraciones de la base de datos).

miércoles, 2 de septiembre de 2015

PhpStorm 9 Cómo habilitar el Zoom para el mouse en windows

PHP Storm 9 no tiene habilitada la funcionalidad de hacer zoom o hacer más grande la letra por default.

Para habilitarlo, hay que ir a file / settings / Editor / General

Habilitando el zoom para el mouse en PHPStorm 9


Marcamos la casilla que dice "Change font size (Zoom) with ctrl + Mouse + Wheel".

domingo, 30 de agosto de 2015

UBER - Cupón para viajar gratis en tu primera vez

¿Estás por utilizar Uber por primera vez?

No olvides poner el siguiente código de promoción (cupón) para obtener un descuento de $50 MXN en tus tres primeros viaje.

nuc2r4x1ue


Saludos

jueves, 23 de julio de 2015

Setup a Global variable for all views in Twig with Slim Php Framework

Let's say you need to be able to use a constant value inside your Twig views. In this case, we will define a variable that contains the base root directory in order to call our assets, such as .css and .js files inside our templates.


  1. To achieve this, declare the global variable inside your config file, for example in development.php
      [
        'url'   =>  $baseUrl,
        'assets'=>  $baseUrl.'/registerlogin/public/',
    
  2. You need now to put this variable available for all the Twig views. For example, in your start.php file, by typing the following:
    $twig = $app->view();
$twig->getEnvironment()->addGlobal('assetsUrl', $app->config->get('app.assets'));
    
  3. Finally, you may now make use of this value anywhere you want. For example, when requiring assets inside our views:
    
    

miércoles, 22 de julio de 2015

Cómo agregar o concatenar uno o varios ceros en Excel

Tengo por ejemplo un conjunto de celdas con números. Deseo agregar un cero a aquellos números menores que 10.

Si por ejmplo, tengo la siguiente lista:

  • 4
  • 6
  • 19
  • 21
  • 9
Utlizando la función =TEXTO()

martes, 21 de julio de 2015

Cómo encontrar números consecutivos en Excel 2013

Supongamos que deseas encontrar números consecutivos en un determinado renglón (de números en varias columnas o de manera horizontal) en Excel.

Encontrando números consecutivos en Excel 2013

Cómo cambiar el nombre de una tabla de mysql en phpmyadmin

Para cambiar el nombre de una tabla de tu base de datos utilizando el phpmyadmin realiza lo siguiente:

1) Localiza la tabla que deseas cambiar.

2) Una vez estando ahí da clic sobre la pestaña que dice "operaciones"

Para editar una tabla en phpmyadmin, dar clic sobre la pestaña operaciones


3) En medio verás un cuadro de texto con una leyenda que dice: "Cambiar el nombre de la tabla a" y ese mismo cuadro de texto teclea el nuevo nombre de la tabla deseado y le das clic abajito donde dice continuar.

Cambiando el nombre de una tabla de la base de datos en phpmyadmin


Y ya recibimos un mensaje de confirmación.

Recibiendo el mensaje de confirmación de phpmyadmin de que el nombre de la tabla ha sido cambiado


¡Es todo!

Cómo pasar un texto a mayúsculas o minúsculas en Excel 2013

Supongamos que tenemos un texto en la primera celda. Luego vamos a cualquier otro lado de la hoja de cálculo y empezamos a teclear el símbolo de igual = e tecleamos la función MAYUSC().

Pasando un texto a mayúsculas de una celda en Excel


E inversamente, para pasar a minúsculas se utiliza la función MINUSC().

Como dato adicional, la función NOMPROPIO() sirve para poner en mayúscula la primera letra de cada palabra.

Función NOMPROPIO() de Excel que pone en mayúscula la primera letra de cada palabra.


Precisamente muy útil si queremos dar formato a los nombres y apellidos ;)

martes, 16 de junio de 2015

Solución para MySQL error - #1062 - Duplicate entry ' ' for key ' '

Este error se puede deber a que el índice de dicha columna está definido como 'UNIQUE'. Tienes que cambiarlo a 'INDEX'.
Eligiendo el tipo de índice como INDEX en MySQL y no como UNIQUE para evitar el error 1062
Es todo!

martes, 2 de junio de 2015

Solución al problema "An invalid form control with name='' is not focusable."

Lo que quiere decir este mensaje es que falta asignar a tu formulario un nombre.

Así que teclea name="nombre-de-la-forma"
Listo

miércoles, 27 de mayo de 2015

Laravel 4: Cómo obtener la dirección IP del usuario

Por alguna razón, requerirás almacenar en la base de datos (BD) la dirección IP de un usuario conectado a tu sistema. Para hacerlo, teclea el siguiente código:
$request = Request::instance();
$request->setTrustedProxies(array('127.0.0.1')); // Sólo confiar en estas direcciones que estén dentro de este arreglo (cambiar aquí de acuerdo a tus necesidades)
$ip = $request->getClientIp();
Y finalmente podrás proceder a almacenar dicha info a tu BD.

martes, 26 de mayo de 2015

How to translate DataTables to your language

In order to translate DataTables most common messages to your language, copy the following piece of code:
 
And you are done!

Traducir DataTables al español

Para traducir al español las instrucciones o mensajes más comunes de DataTables al español, copia el siguiente código:
 
Es todo!

viernes, 22 de mayo de 2015

solución al problema ReflectionException class seeder does not exist en Laravel 5

Acabas de crear un archivo tipo seeder en laravel 5 y te sale ese error?

Prueba primero tecleando en consola dentro de la carpeta de tu proyecto lo siguiente:

$composer dump-autoload

Y prueba de nuevo con el comando

$php artisan db:seed

Ya quedo? Excelente!

Si no, entonces verifica que en la parte superior de tu nuevo archivo seeder, por ejemplo, UserTableSeeder.php tenga las siguientes líneas:

use Illuminate\Database\Seeder;class UserTableSeeder extends Seeder{

    public function run(){
        DB::table('users')->insert(array(
            'name'      =>  'Nombre Apellido',            'email'     =>  'yo@miMail.mx',            'password'  =>  Hash::make('password')
        ));    }
}

Ahora también verifica que tu archivo DatabaseSeeder.php, en la parte superior, tenga la siguiente línea en la parte superior:

use Illuminate\Database\Seeder;

Es todo!

sábado, 9 de mayo de 2015

cómo copiar una tabla de un sitio web a Excel 2013

Hay ocasiones en que requieres importar o copiar una tabla de una página web a Excel para hacer análisis o comparaciones.

Por ejemplo, digamos de una página con una lista de servicios y precios:

Seleccionando la tabla con el ratón para copiarla con las teclas control + C

miércoles, 6 de mayo de 2015

Validar RFC de México en PHP

Aquí está una función que he encontrado y que añadí la funcionalidad para validar el RFC sin homoclave.
Esta función valida si es RFC con homoclave y para personas morales.
 //Valida RFC México. Referencias: http://www.forosdelweb.com/f18/aporte-valida-estructura-rfc-para-mexico-1023432/
 public function valida_rfc($valor){
        $valor = str_replace("-", "", $valor); 
        $cuartoValor = substr($valor, 3, 1);
        //RFC sin homoclave
        if(strlen($valor)==10){
            $letras = substr($valor, 0, 4); 
            $numeros = substr($valor, 4, 6);
            if (ctype_alpha($letras) && ctype_digit($numeros)) { 
                return true;
            }
            return false;            
        }
        // Sólo la homoclave
        else if (strlen($valor) == 3) {
            $homoclave = $valor;
            if(ctype_alnum($homoclave)){
                return true;
            }
            return false;
        }
        //RFC Persona Moral.
        else if (ctype_digit($cuartoValor) && strlen($valor) == 12) { 
            $letras = substr($valor, 0, 3); 
            $numeros = substr($valor, 3, 6); 
            $homoclave = substr($valor, 9, 3); 
            if (ctype_alpha($letras) && ctype_digit($numeros) && ctype_alnum($homoclave)) { 
                return true; 
            } 
            return false;
        //RFC Persona Física. 
        } else if (ctype_alpha($cuartoValor) && strlen($valor) == 13) { 
            $letras = substr($valor, 0, 4); 
            $numeros = substr($valor, 4, 6);
            $homoclave = substr($valor, 10, 3); 
            if (ctype_alpha($letras) && ctype_digit($numeros) && ctype_alnum($homoclave)) { 
                return true; 
            }
            return false; 
        }else { 
            return false; 
        }  
 }//fin validaRFC
Es todo!

Quizás también te interese: Cómo validar la CURP en PHP.

martes, 5 de mayo de 2015

Instalación de certificado de seguridad o https en tu sitio web de php

Digamos que estás en ambiente Windows y estás utilizando XAMMP (5.6.8).

Abrimos la consola y nos ubicamos en el directorio:

c:\xampp\apache\bin

Ahora definimos un par de variables de entorno:

$ set OPENSSL_CONF=C:\xampp\apache\conf\openssl.cnf

(Verifica primero si tienes una carpeta llamada Temp en c:)

¿Cuál es la versión de phpmyadmin que permite sincronizar bases de datos?

La última versión de phpmyadmin que permite la sincronización de bases de datos es la 3.5.8.2. La sincronización de bases de datos en MySQL se refiere a que tú tienes dos bases de datos similares. Es decir, que no todas las columnas empatan. Puede que algunas o las mayorías. Lo interesante es que esta versión de phpmyadmin te va diciendo exactamente renglón por renglón o registro por registro (tupla por tupla), cuáles son los que no empatan. Además te los muestra en lenguaje SQL. Más adelante pondré imágenes ... estén pendientes.

viernes, 1 de mayo de 2015

Laravel y bootstrap: Poner la clase Active de manera automática en la barra de navegación

Tienes tu proyecto en Laravel y utilizas bootstrap y deseas que en el menú se refleje en qué parte de tu sitio estás tal y como se muestra a continuación:

Lo que debes hacer es lo siguiente:

miércoles, 29 de abril de 2015

Select2: Mostrar mensajes en español

Para utilizar select2 en idioma español o cualquier otro, hay que realizar básicamente 2 cosas:

  1. Incluir el archivo del idioma español:
  2.  
      
  3. Especificar en javascript que se utilizará el idioma español
  4.  
    
También puedes incluir directamente ambos scripts desde el CDN:


Si quieres otro idioma, checa la lista aquí. Ahh, y el respectivo CSS también desde el CDN:
¡Es todo!☺

miércoles, 22 de abril de 2015

MySQL: cómo encontrar registros duplicados en varias columnas

Sabemos del artículo anterior sobre cómo encontrar valores duplicados en una sola columna.

Pero ahora, ¿cómo hacerle para encontrar duplicados en valores de series de columnas (registros o renglones enteros) cuyos conjuntos de valores se repiten?

Por ejemplo, digamos que queremos saber si una combinación de valores se repiten dentro de una tabla de una base de datos. Digamos que tenemos Ci (nombres de columnas) y Vi (Valores en las columnas)

C1, C2, C3,...,Cn
V1,V2,V3,...,Vn
2,3,4,5
2,3,4,1
3,4,6,8
2,4,5,9
2,3,4,1
4,2,6,4
...

En este caso, querríamos encontrar que la combinación 2,3,4,1 se repite dos veces:

Entonces, la consulta quedaría como:
SELECT CONCAT(C1,', ',C2,', ',C3,', ',C4) AS 'combinación',
COUNT(*) cantidad,
GROUP_CONCAT(ID_tabla SEPARATOR ', ') AS ID_tabla
FROM tabla GROUP BY 1 HAVING 2 > 1
ORDER BY 2 DESC

Además, agregamos el ID_tabla para que también la consulta nos muestre cuáles son los identificadores o IDs de la tabla en donde se repiten dichas combinaciones.

Cabe destacar que que el número 1 después de donde dice GROUP BY, se refiere al número de la columna. Por ejemplo, en ORDER BY 2, el 2 significa que ordene los valores de acuerdo a la segunda columna.
Otra manera es la siguiente:
SELECT   id,
         columna1,
         columna2,
         columna_N,
         count(*)
FROM     tu_tabla
GROUP BY id,
         columna1
HAVING   COUNT(*) > 1

 ¡Es todo! ☺

domingo, 19 de abril de 2015

Cómo colocar anuncios adSense en Wordpress

Para poder colocar anuncios de adSense en tu sitio de Wordpress debes cumplir con lo siguiente:

Contar con tu cuenta adSense
Tener al menos un anuncio creado

Si ya has intentado colocar los anuncios de adSense en tu sitio de Wordpress, seguramente el problema que tienes ahora es que los anuncios no se visualizan. Simplemente ves el típico cuadro en amarillo claro o algo así.

Lo que hice fue instalar el plugin Google AdSense.

lunes, 16 de marzo de 2015

cygwin: el comando wget no aparece (solucionado)

Para hacer que funcione el comando wget, lo que tienes que hacer es ejecutar de nuevo el setup.exe del cygwin. Es como si lo volvieras a instalar.
En mi caso, el archivo se llama:

setup-x86_64.exe

Lo vuelves a ejecutar y cuando te muestre la lista de paquetes, en el cuadro de buscar teclea "wget" y de los resultados filtrados elige instalar el paquete web marcando las dos casillas que están ahí.

Listo, dale seguir instalando y ya tendrás el comando wget en tu cygwin.

El comando GULP no existe después de la instalación (resuelto)

Para el comando gulp esté disponible en la línea de comandos, hay que también instalarlo globalmente. Teclea en tu línea de comandos y en el directorio de tu proyecto lo siguiente:

npm install -g gulp

¡Es todo!

PhpStorm Mostrar el número de línea en el código

Para hacer que aparezca el número de línea en tu código cuando utilizas phpStorm, haz lo siguiente:

En Windows:
Teclea Ctrl + Alt + S y se te aparecerá la ventana de configuración.

Luego ve a Editor / General / Appearance
Y marca la casilla que diga: Show Line Numbers.

En Mac:Ve al menú preferencias:
Preferences | Editor | (General) | Appearance | Show line numbers.

domingo, 15 de marzo de 2015

phpstorm cómo buscar o encontrar texto o una palabra en todo el proyecto

En phpStorm das clic en Edit del menu principal, luego selecciona Find in path (Ctrl + Mayús + F) y listo.

Ahora sí puedes encontrar esa palabra o pedazo de código en todo el mar de código ;)

lunes, 2 de marzo de 2015

php artisan migrate QueryException Base table or view already exists

Este error puede deberse a que las fechas de creación de los archivos de migraciones hayan cambiado.

Por ejemplo, en mi caso hice unos primeros archivos de migraciones. Y por no configurar de antemano el reloj (cuyo default en xampp es de 'Europe/Berlin') y que posteriormente lo cambié, el orden de las migraciones se altera causando este error.

Lo que hay que hacer es ir a la tabla migrations creada por el mismo php artisan. En este caso no se puede modificar la información ya que no tiene una llave primaria. Lo que sí se puede hacer es eliminar la base de datos y modificar los nombres de los archivos de las migraciones de tal manera que estén en el orden correcto.

Luego, volver a correr el comando php artisan migrate.

viernes, 27 de febrero de 2015

Cómo actualizar composer

Para actualizar composer, hay que teclear simplemente lo siguiente:

composer selfupdate

Pero antes, hay que verificar lo siguiente:
  • Estar en el directorio adecuado
Para ello, teclea:

composer diagnose

Si en los resultados te aparecen varios FAIL, por ejemplo en:

Checking composer.json: FAIL

Es porque no estás ubicado en el directorio adecuado o donde se instaló composer.
Para el caso de XAMPP, normalmente composer está dentro de la carpeta

c:\xampp>

Entonces dentro de esa carpeta tecleamos de nuevo composer diagnose y obtenemos lo siguiente:

$ composer diagnose
Checking platform settings: OK
Checking git settings: OK
Checking http connectivity: OK
Checking github.com rate limit: OK
Checking disk free space: OK
Checking composer version: FAIL
You are not running the latest version

Esto significa que estamos justamente en el directorio en donde está instalado composer originalmente. Ahora sólo queda actualizar composer tecleando lo siguiente:

composer selfupdate

Y después de esto aplicamos de nuevo diagnose:

$ composer diagnose
Checking platform settings: OK
Checking git settings: OK
Checking http connectivity: OK
Checking github.com rate limit: OK
Checking disk free space: OK
Checking composer version: OK

Y ya tenemos el composer actualizado.



lunes, 2 de febrero de 2015

MySQL Solución al error Unknown object in backup file - The Restauration failed

Estás restaurando una base de datos en MySQL a partir de un archivo de respaldo .sql y de repente te encuentras con el siguiente error:

Arrggghhh!!!

Lo que debes hacer es lo siguiente:

sábado, 31 de enero de 2015

JQuery: Cómo hacer que el botón submit de un formulario se active tanto con el mouse como con la barra espaciadora

Sucede que has creado un formulario, por ejemplo de acceso, con Ajax y Jquery para autentificar a un usuario.



Puede que hayas notado que el botón (submit) de acceso sólo se activa con darle clic sobre ese mismo botón y no con la barra espaciadora.

Cómo validar el código postal en laravel

Digamos que quieres validar el código postal de México que consiste en 5 dígitos. Por ejemplo, '02345', '55111', etc.

Básicamente tienes que validarlo con digits. Por ejemplo:
                    //validación
                    $validator=Validator::make(
                        array('cp'=>Input::get('cp')),
                        array('cp'=>'required|digits:5'),
                        array(
                                'required'=>'El campo del código postal no puede quedar vacío.',
                                'digits'=>'El campo del código postal debe tener 5 dígitos.'
                        )
                    );
                    if($validator->fails()){
                        $messages = $validator->Messages()->all();
                        return Response::json($messages);
                    }
                    $domicilio_data=array('cp'=>Input::get('cp'));

¡Es todo!

martes, 27 de enero de 2015

Laravel 4: la validación between:min,max no funciona con numeric ni con integer

Si por ejemplo quieres validar que un campo debe contener sólo número y además tenga entre un número y otro de dígitos. Por ejemplo, si queremos validar un código postal, que quedaría entre 4 y 6 dígitos y usando la validación numeric y between:min,max:
//validación
                    $validator=Validator::make(
                        array('cp'=>Input::get('cp')),
                        array('cp'=>'required|numeric|between:5,13'),
                        array(
                                'required'=>'El campo del código postal no puede quedar vacío.',
                                'numeric'=>'El campo del código postal sólo debe tener números',
                                'between'=>'El campo del número del código postal debe tener entre :min y :max caracteres.'
                            )
                    );
Esto no funciona.

Sin embargo, vi que utilizando la validación digits_between:min,max, ya funciona. Entonces el código de validación queda como:
                    //validación
                    $validator=Validator::make(
                        array('cp'=>Input::get('cp')),
                        array('cp'=>'required|digits_between:5,13'),
                        array(
                                'required'=>'El campo del número del código postal no puede quedar vacío.',
                                'digits_between'=>'El campo del número del código postal debe tener entre :min y :max caracteres.'
                            )
                    );
Es todo!!

domingo, 25 de enero de 2015

Laravel 4: Cómo validar Alpha con espacios

Originalmente en Laravel 4 puedes validar que un campo sólo contenga letras, por ejemplo, México.
Pero si deseas probar con "Distrito Federal", la validación falla ya que tiene un espacio, aún cuando sólo se tienen letras.

Para hacer que la regla alpha acepte también espacios, hay que ir a la ruta:
\vendor\\laravel\\framework\\src\\Illuminate\\Validation\\Validator.php
Y buscamos la función que está más o menos en la línea 1202, comentan la línea que muestro y ponen la nueva: 


public function validate_alphaExt($value, $input, $args){
        if(preg_match('/^[\s]*[\p{L}\p{N} ."\'¡!¿?:;,%()\/-]*$/u', $value)) 
         {return true;} 
          else {return false;}
//http://stackoverflow.com/a/24282953/1883256 Tenía el + en vez de asterisco.
    }
Listo!

domingo, 18 de enero de 2015

La diferencia entre decir "buen día" y "buenos días"

En estos últimos años, he notado que cada vez más personas dicen Buen día en vez de decir Buenos días.
Discutiré cuál es la principal diferencia en decir una y otra frase.

La forma de saludar diciendo Buenos días es muy peculiar en el idioma español, ya que en otros idiomas se dice simplemente buen día, por ejemplo:

  1. Good day (inglés)
  2. Bonjour (francés)
  3. God dag (sueco)
  4. Guten Tag (alemán)
  5. Dzień dobry (polaco)
  6. Добрый день (ruso)
  7. Hyvää päivää (finlandés)

martes, 13 de enero de 2015

Cómo respaldar bases de datos de mysql

Para restaurar una o varias bases de datos de mysql, recomiendo utilizar el programa mysql administrator.

Este programa lo puedes conseguir desde esta página o busca en google el término "mysql gui tools". Asumiendo que estás en un ambiente Windows y que tienes instalado el XAMPP, baja la versión que dice "Windows (x86, 32-bit), MSI Installer GUI Tools". Es un istalador automático para Windows, de esos del famoso "siguiente, siguiente, siguiente, ..." ☺

Ya que lo has instalado, abre el programa que se llama MySQL Query Administrator.

 

Tags