jueves, 25 de agosto de 2016

Solución al error str_word_count() expects parameter 2 to be long, string given

Este error se debe a que el segundo argumento debe ser un número entre 0 y 2 (además es opcional). Y el tercer argumento es, efectivamente, una cadena de caracteres.

miércoles, 24 de agosto de 2016

Averiguar la dirección IP en MAC

Para averiguar cuál dirección IP tiene tu Mac en la red WiFi, sigue los siguientes pasos:


  1. Da clic sobre el ícono de tu conexión a Internet (las conchitas u onditas) que está en la parte superior casi a la derecha. Normalmente del lado izquierdo del indicador de la batería.
  2. Da clic sobre la opción de hasta abajo "Abrir el panel de preferencias de red"
  3. En la nueva ventana que se llama "Red", da clic sobre el botón que está abajo que dice "Avanzado"
  4. Se abrirá otra ventana. Ahora selecciona la pestaña "TCP/IP"
  5. Tu dirección IP en el WiFi aparece justo donde dice "Dirección IPv4"

Listo, tu IP puede ser del tipo 192.168.1.10

Ahora para salir, en esa ventana dale en "Cancelar" y la otra ventana que queda ciérrala.

Cómo encontrar las palabras más repetidas de un texto con PHP

El siguiente script de php lo que hace es lo siguiente:

  1. Almacenar el texto en una variable.  (Lo desplegamos para ver cómo se ve)
  2. Separamos el texto en palabras con la función str_word_count(), la cual, como parámetros lleva el texto, la opción 1 para que devuelva las palabras encontradas y un arreglo para que admita los acentos del idioma español.
  3. Contamos las frecuencias de cada palabra con la función array_count_values().
  4. Ordenamos el arreglo anterior de acuerdo a la frecuencia de apariciones de mayor a menor con la función arsort().
  5. Declaramos un arreglo que quite las palabras que no queremos, tales como artículos, preposiciones, etc. Dicho arreglo lo llamamos $stopwords (palabras vacías).
  6. Con la función array_map(), vamos aplicando a cada palabra el filtro del stopwords; Asimismo podemos aplicar otras restricciones tales como las de sólo mostrar aquellos términos que tengan una frecuencia mayor a 1.
Aquí va el código, el cual puedes probar en el sitio http://phptester.net/ y hacer tus propias modificaciones.




'; var_dump($words); /*3. Contamos las frecuencias de cada palabra*/ $words = array_count_values($words); echo '

'; var_dump($words); /*4. Ordenamos el arreglo anterior de acuerdo a la frecuencia de apariciones*/ echo '

'; arsort($words); var_dump($words); echo '

'; /*5. Declaramos un arreglo que quite las palabras que no queremos*/ //Stopwords: $stopwords = ['de','el','la','que','al','los','a','las']; /*6. vamos aplicando a cada palabra el filtro y mostrar aquellos términos que tengan una frecuencia mayor a 1*/ array_map(function($word,$index)use($stopwords){ /*Aplicar lo de stopwords*/ if(!in_array($index,$stopwords)){ if($word>1){ echo $word.' '.$index.'
'; return $word; } } },$words,array_keys($words));
Ciao!

martes, 16 de agosto de 2016

httpd-xampp.conf: Cómo permitir el acceso a una dirección IP externa aparte de localhost?

Primero localiza el archivo httpd-xampp.conf, suponiendo que estás en ambiente Windows, abre el XAMPP Control Panel, a la altura del módulo de Apache, haz clic en el botón config y selecciona el archivo httpd-xampp.conf .

Dentro del archivo httpd-xampp.conf, teclea y guarda lo siguiente:

# New XAMPP security concept
#

    Require local
    Require ip 10.0.0.1
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var

La clave está en las palabras "require ip"

Si quieres poner otra dirección, simplemente en otra línea pones Require ip xxx.xxx.xxx.xxx.

sábado, 6 de agosto de 2016

Todo el alfabeto en una sola línea

Aquí está una cadena de todo el alfabeto para los programadores (cadena alfanumérica):
var possible = 'ABCDEFGHIJKLMNÑOPQRSTUVWXYZabcdefghijklmnñopqrstuvwxyz01234567890';

Ciao.

martes, 2 de agosto de 2016

Actualizar node js en Mac OS (y con XAMPP)

La manera más fácil es siguiendo los siguientes pasos (teclear los comandos en la terminal):

1) $ sudo npm install -g n
2) $ sudo npm cache clean -f

Ahora, si tienes el XAMPP instalado en tu Mac, haz los siguientes pasos adicionales:
a) $ cd /Applications/XAMPP/xamppfiles/bin
b) $ sudo mv HEAD _HEAD

Ahora, actualizar el node.js en tu Mac es simple:
3) $ sudo n stable
4) $ npm update -g

Para los que tienen XAMPP, restaurar lo siguiente:
c) $ cd /Applications/XAMPP/xamppfiles/bin
d) $ sudo mv _HEAD HEAD

Finalmente puedes verificar que el node.js se ha actualizado efectivamente:
5) $ node -v
6) $ npm -v

Es todo.

Cómo actualizar node.js en Laravel Homestead en Mac OS

Para actualizar el node.js de tu laravel homestead en Mac OS, teclea (typea) los siguientes comandos:

Pasos previos:
1) Inicia tu laravel homestead: $ vagrant up
2) Entra a tu VM: $ vagrant ssh

Ahí viene lo de la actualización del node.js

3) $ sudo npm cache clean -f
4) $ sudo npm install -g n
5) $ sudo n stable

6) Sal de la VM: $ exit

Finalmente reinicia la máquina virtual (VM)

7) $ vagrant reload --provision
8) $ vagrant ssh

Verifica la versión de tu node.js:

9) $ node -v

Es todo.

jueves, 21 de julio de 2016

Laravel 5.2 no muestra los errores después de la validación (SOLUCIONADO)


Si has seguido los pasos, ya sea de la documentación de laravel o de los cursos de "Learn Laravel" y ves que simplemente no se despliegan los errores después de la validación, fíjate si en tu grupo de rutas tienes "middleware". Si es así, cambia en donde dice "middleware" por "middlewareGroups". Es decir:

De:

Route::group(['middleware'=>['web']], function(){
//El resto de tus rutas aquí
});

Cámbialo por:

Route::group(['middlewareGroups'=>['web']], function(){
//El resto de tus rutas aquí
});

Referencias:

http://stackoverflow.com/a/37532300/1883256

domingo, 17 de julio de 2016

Crear página de error 404 not found en laravel

Rápidamente, ve a la carpeta "resources/views/errors". Dentro de dicha carpeta "errors", crea un nuevo archivo que se llame "404.blade.php". Dentro de ese archivo coloca tu código HTML.
Por ejemplo, simplemente teclea "404" y ahora intenta navegar a una página que no exista.
Verás que ahora aparece lo que tecleaste.

Si no tienes plantilla, copia todo el HTML del archivo 503.blade.php y sustituye donde dice "Be right back" por 404.
Abajito puedes agregarle un párrafo con las etiquetas 'p' del html que diga "La página que usted está buscando no ha sido encontrada".

¡Listo!

miércoles, 13 de julio de 2016

Laravel arreglar el error 500

Si recientemente has instalado Laravel y recibes un error 500 al abrir la carpeta public en tu navegador, desde tu terminal en MAC, teclea el siguiente par de comandos:


  • $ sudo chmod -R gu+w storage
  • $ sudo chmod -R guo+w storage


Listo.

Encontrar el archivo Homestead.yaml en MAC

Para encontrar y editar el archivo Homestead.yaml necesitas teclear lo siguiente en tu terminal:


  • $ cd $HOME
  • $ cd .homestead
  • $ nano Homestead.yaml


Listo.

viernes, 1 de julio de 2016

Solución XAMPP Windows 7 move_uploaded_file(): failed to open stream: Permission denied

Normalmente lo que harías en MAC, Linux o en SSH sería lo siguiente:


  1. Ir al directorio en donde se encuentra la carpeta a donde quieres subir los archivos. Por ejemplo, un cd /ruta/a/tu/carpeta/
  2. Luego, para asegurarte de que dicha carpeta está a la vista, tecleas ls -la para visualizar los archivos y, sobre todo, tus carpetas.
  3. De ahí, se procede a cambiar los permisos de tus carpetas con el siguiente comando: chmod 767 Tu_Carpeta
  4. Y ya no tendrías ese problema de subir los archivos con la función php de move_uploaded_file
Para windows, es mejor que te bajes un programa de shell, por ejemplo el "Cygwin64 Terminal". Abres la terminal, y para ubicarte en tu disco duro C, simplemente teclea el comando cd /cygdrive/c o cd c:/

Ejecuta los comando enumerados al principio y listo. Habrás podido modificar los permisos de tu carpeta. ☻

martes, 21 de junio de 2016

Cómo pasar una consulta de MySQL compleja a Eloquent ORM

Si te encuentras en la situación en la que quieres pasar una consulta larga y compleja como la que sigue:

a Eloquent ORM.

Lo que debes hacer es utilizar el método raw() como sigue:


$proyectosportipo = Capsule::select(Capsule::raw("
    SELECT tipo as Tipo, COUNT(tipo) AS Cantidad
    FROM projects
    WHERE situacion IN ('reiniciados','en proceso') OR
          (situacion IN ('finiquitados')
           AND COALESCE(fech_fin,fech_termino,fech_proptermino) BETWEEN '2015-08-01' AND '2016-08-01')
    GROUP BY Tipo
    "));


Sin embargo, lo malo de esto es que el valor devuelto es un arreglo con el que no se podrá utilizar otros métodos de Eloquent.

Ahora lo que tienes que hacer es convertir ese mismo resultado a una colección utilizando el método collect() como sigue:
$proyectosportipo = collect($proyectosportipo);

Es todo ☻

jueves, 16 de junio de 2016

Cambiar la dirección del sitio de tu Wordpress desde la base de datos

¿Cambiaste por error la dirección de tu sitio de Wordpress y ya no puedes acceder a tu panel de administración?

La solución que vamos a ver aquí es volver a poner la URL o dirección de tu sitio desde la base de datos de tu Wordpress.

Para ello necesitamos lo siguiente:


  1. Tus credenciales de acceso a la base de datos (nombre de usuario y contraseña). Este dato lo has de tener apuntado. Justo al momento de crear tu Wordpress se te proporcionó dicha información (o tuviste la oportunidad de elegir al momento de que se te pidió hacerlo).
  2. Acceder a la base de datos. Por lo general, puedes acceder a la misma a través del famoso phpmyadmin o cualquier otro programa que te permita acceder a tu base de datos para que puedas hacer consultas y modificaciones.
Ahora, lo que se debe hacer es lo siguiente:

  1. Busca y despliega la información de la tabla `wp-options`. En caso de que estés en una línea de comandos (SSH), teclea la siguiente:
  2. Ahora ve al renglón (generalmente es el primero) en donde la columna se llame `option_name` y cuyo valor sea `site_url`.
  3. Justo en la columna `option_value` encontrarás la dirección del sitio. Ponla con el valor que corresponda, en mi caso sería `http://misitio.com`.
  4. Guarda los cambios y ahora intenta volver al panel de administración de tu sitio.
Listo.

martes, 14 de junio de 2016

Solución al Recaptcha error: Invalid domain for site key

Normalmente este error viene porque probablemente tu sitio lo cambiaste a otro dominio. Por lo que tienes que especificar en la página del ReCaptcha (https://www.google.com/recaptcha/admin)  el nuevo dominio en donde estarás utilizando tu reCaptcha.

Actualiza pues tu llave secreta (secret_key) en el backend (la parte lógica de tu programación o Controller) y tu llave pública (site_key) en la parte de tu formulario o frontend (en la vista ó view de tu aplicación) y listo.

Documentación: https://github.com/google/recaptcha/blob/master/examples/example-captcha.php


 

Acerca de mí

Mi foto
I'm a computer engineer and polyglot =) i speak: Spanish, English, French, Swedish, Russian, and German. I like to dance bachata and kizomba. i have worked as an interpreter, guide, and tourist guide. At the moment i work as a computer engineer, and consultant. Visit my travel and photography blog on: http://surlaroute.com.mx/ ☺ And our street style from Mexico: http://streetstyle.mx

Tags