Publicidad

Cuadros Sociales con Font-Awesome

11:54 p. m. Posted by Reinaldo Cassiani (cass) No comments
Resultado:

Descargar e incluir Font-Awesome dentro de la etiqueta head
<link rel="stylesheet" href="css/font-awesome/css/font-awesome.min.css">

CSS:
.cuadros-sociales{}
.cuadros-sociales .item{
 text-align: center;
 display: inline-block;
 width: 67px;
 margin: 0;
 padding-top: 20px;
 padding-bottom: 20px;
}
.cuadros-sociales .item a{
 text-decoration: none;
 color: #fff;
}
.cuadros-sociales .facebook{
 background-color:#3b579d;
}
.cuadros-sociales .twitter{
 background-color:#33ccff;
}
.cuadros-sociales .google-plus{
 background-color:#e02f2f;
}
.cuadros-sociales .instagram{
 background-color:#2e5e86;
}

HTML:
<div class="cuadros-sociales">
   <div class="item facebook"><a title="Facebook" href="http://facebook.com/" target="_blank"><i class="fa fa-facebook fa-2x"></i></a></div>
   <div class="item twitter"><a title="Twitter" href="http://twitter.com/" target="_blank"><i class="fa fa-twitter fa-2x"></i></a></div>
   <div class="item google-plus"><a title="Google+" href="http://google.com/" target="_blank"><i class="fa fa-google-plus fa-2x"></i></a></div>
   <div class="item instagram"><a title="Instagram" href="http://instagram.com/" target="_blank"><i class="fa fa-instagram fa-2x"></i></a></div>
</div>

Android Studio: problemas con el Emulador

5:16 p. m. Posted by Reinaldo Cassiani (cass) No comments
Aplicación: Android Studio
Error:
emulator: ERROR: x86 emulation currently requires hardware acceleration!
>Please ensure Intel HAXM is properly installed and usable.  
>CPU acceleration status: HAX kernel module is not installed!

La aceleración de la máquina virtual para Windows requiere del Intel HAXM (Intel Hardware Accelerated Execution Manager).

Solución: 
1.- Buscar y activar la opción de Intel(R) Virtualization Technology (VT) en el BIOS de tu ordenador y dejarlo apagado por unos 10 minutos.
2.- Descargar y descomprimir el Android SDK.
3.- Ejecutar el Intel HAXM (intelhaxm o intelhaxm-android):
{SDK_FOLDER}\extras\intel\Hardware_Accelerated_Execution_Manager
4.- Si la instalación es correcta ya habremos terminado, sino, si al efectuar el paso 3 recibes el siguiente mensaje:
This computer meets the requirements for HAXM, but intel virtualization 
technology (VT-x) is not turned on. HAXM cannot be installed until VT-x 
is enabled. Please refer to the Intel HAXM documentation for more 
information.
continua con el paso 5.

5.- Desinstalar el antivirus temporalmente.
6.- Realizar nuevamente el paso 3.
7.- Instalar nuevamente el antivirus.

Probado en una HP Intel Core I3 con Windows 7.

Más información en: http://developer.android.com/tools/devices/emulator.html

Desaparecen los iconos de la barra de tareas en Windows 7

1:56 p. m. Posted by Reinaldo Cassiani (cass) No comments
Desaparecen los iconos de la barra de tareas en Windows 7

Solución:

- Abrir el Administrador de Tareas de Windows.
- Finalizar el proceso explorer.exe (seleccionas el nombre del proceso, click en el botón Finalizar Proceso).




- Ir al Menú -> Archivo -> Nueva Tarea (Ejecutar), introducir explorer.exe y aceptar.

Básicamente lo que se hace es reiniciar el proceso del explorer, así que deberías tener los iconos de regreso.

Instalar Netbeans 8 en Ubuntu 14

2:29 p. m. Posted by Reinaldo Cassiani (cass) , No comments
Básicamente el procedimiento es igual a cuando instalabamos la versión 7.x de Netbeans en Ubuntu 11 y superiores.

1.- Instalar el JDK de java (requerido por netbeans). Desde la consola lo haríamos así:
sudo apt-get install openjdk-7-jdk

2.-Nos vamos al apartado de descargas de Netbeans en la Web Ofiical y descargamos la opción que nos sea más conveniente (en mi caso sólo con soporte para HTML5 & PHP: netbeans-8.0-php-linux.sh).

3.- Una vez descargado, ubícamos el archivo (netbeans-8.0-php-linux.sh) a través de la terminal, yo lo tengo en el escritorio:
cd Escritorio

4.- Después le otorgamos permisos de ejecución:
chmod +x netbeans-8.0-php-linux.sh

5.- y ejecutamos:
./netbeans-8.0-php-linux.sh

Luego aparecerá un asistente gráfico para instalar Netbeans, sólo debemos dar clic en Siguiente según sea el caso, hasta Finalizar.

uninstall: (ejemplo)
root@ubuntu-local:/# cd /usr/local/netbeans-8.0/
root@ubuntu-local:cd /usr/local/netbeans-8.0# ./uninstall.sh

PHP y los archivos dBase (dbf)

7:07 a. m. Posted by Reinaldo Cassiani (cass) , , No comments
Hasta ahora nunca había tenido la necesidad de acceder a ficheros de extensión .dbf, y aunque sea bastante viejo (sin ofender), algunas aplicaciones (hechas con Visual FoxPro por ejemplo) hacen uso de ésta tecnología. Esta extensión pertenece a archivos de base de datos y uno sólo de ellos viene siendo una tabla, por así decirlo.

Desde PHP podemos acceder a los ficheros de formato dBase(dbf), para conseguirlo, necesitamos habilitar la librería.

nota
A partir de PHP 5.3.0. php_dbase ha sido movido al repositorio de PECL de php.net, por lo que su instalación debe hacerse manualmente.

Los ejemplos de éste artículo, corren sobre PHP 5.4.22 (Windows7)

Instalación y Configuración:
Debemos ir al archivo de configuración de PHP (php.ini) y habilitar la extención de dBase:
En Windows (c://xampp/php/php.ini en caso de que uses Xampp), buscamos y descomentamos la siguiente línea:
// cambiar de ...
;extension=php_dbase.dll

// ... a (sólo retirar el punto y coma)
extension=php_dbase.dll

//en ubuntu prueba extension=dbase.so ..

y reiniciamos el servidor.. luego ya podemos empezar a trabajar.

- Si no se encuentra la librería instalada (en el directorio ../php/ext), entonces tocará ,buscarla, descargarla e instalarla.

Archivophp_dbase.dll
DescripcióndBase
Tamaño28kb aprox.
Oficialpecl.php.net/package/dbase

- Descargamos la DLL, descomprimimos y la movemos al directorio de librerías de PHP, en este caso c://xampp/php/ext


- Luego reiniciamos el servidor..


Trabajando con los .DBF

La librería dBase tiene varias funciones para trabajar. Veamos un ejemplo:
<?php
$fichero_dbf = 'mi_dbf.dbf';
$conex       = dbase_open($fichero_dbf, 0);
if($conex){
    $arrData = array();
    $total_registros = dbase_numrecords($conex);
    for ($i = 1; $i <= $total_registros; $i++){
        $arrData[] = dbase_get_record($conex,$i);
    }
    echo '<pre>',print_r($arrData),'</pre>';
}else{
    echo 'No se pudo acceder al fichero dbf';
}
?>


Fuentes:
http://hrazdil.info/blog/414-php-dbase-extension-for-php-5-4-windows-nts-ts-vc9

CodeIgniter: un core, varias aplicaciones..

6:17 a. m. Posted by Reinaldo Cassiani (cass) , 2 comments

CodeIgniter (CI) al igual que otros frameworks como Yii, permite adaptar un único core a multiples aplicaciones.. Para ello hay que seguir varios pasos y a continuación los listamos:

nota
Para el ejemplo nuestro directorio de servidor es /var/www, estamos bajo ambiente GNU/linux y usamos la versión 2.1.3 de CodeIgniter.
Recuerda siempre respaldar tus proyectos antes de hacer algún cambio.

1.- La descarga:
     - descargas CI.

2.- Descomprimir: 
     - descomprimes el zip descargado en tu carpeta del servidor (www en mi caso).

3.- Renombrar:
     - renombras la nueva carpeta generada (yo le coloque sistemas). Ahora, si entramos desde el navegador a localhost/sistemas, debería mostrarnos la vista por defecto de CodeIgniter.

4.- Crear las aplicaciones:
     - multiplicas la carpeta application tantas veces como sistemas necesites y la renombras según sea el caso; Cada aplicación debe disponer de su carpeta completa de application, es decir, sabemos que en ese directorio se alojan sub-carpetas que albergaran entre otras cosas, los controladores, modelos, vistas, etc. entonces, al separar nuestros sistemas por aplicación, mantenemos el orden recomendado a la hora de trabajar, por ejemplo:
/www
... sistemas
....... aplicacion1
........... models (modelos de la aplicación 1)
........... controllers (controladores de la aplicación 1)
........... views (vistas de la aplicación 1)
........... (otros directorios de la aplicación 1)
....... aplicacion2
........... models (modelos de la aplicación 2)
........... controllers (controladores de la aplicación 2)
........... views (modelos de la aplicación 2)
........... (otros directorios de la aplicación 2)


5.- El index por aplicación:
      - CI trae por defecto un archivo index.php que apunta al core y a la carpeta application, nosotros debemos disponer de un archivo index para cada aplicación, obviamente no puede haber más de un archivo con el mismo nombre en el mismo directorio, así que tenemos varias opciones.


5a.- Mostrar una aplicación por defecto:
       - Hay que tomar en cuenta si habrá un sistema por defecto, es decir, si queremos que al entrar a localhost/sistemas se cargue una aplicación directamente, en ese caso podemos dejar que index.php apunte a aplicacion1 y creamos otro index que apunte a aplicacion2 (aplicacion2.php).

 Para apuntar index.php a aplicacion1, debemos abrir el archivo y buscamos la linea:
$application_folder = 'application';

y cambiamos el valor de la variable application_folder por el nombre de nuestro sistema principal (aplicacion1 para el ejemplo).

Fijate que un poco más arriba aparece la variable system_path:
$system_path = 'system';

su valor deberá ser actualizado en caso de que hayamos estado cambiando de lugar el core de CI para su protección.

Cuando corramos localhost/sistemas debe mostrarnos el sistema por defecto, si colocamos mal el nombre del sistema, nos aparecerá el siguiente mensaje:
Your application folder path does not appear to be set correctly. Please open the following file and correct this: index.php

Tambien podriamos acceder a ese sistema por defecto, colocando localhost/sistemas/index.php.

Luego para la aplicación 2 sólo duplicamos ese archivo index y lo renombramos (aplicacion2 para el ejemplo), una vez tenga su propio index y hayamos editado ese archivo apuntando así a la aplicación 2:
$application_folder = 'aplicacion2';

 y al core correctamente, ya lo podemos llamar desde la URL: localhost/sistemas/aplicacion2.


5b.- Mostrar un menú con la lista de sistemas (por defecto):
       - Si por el contrario, deseamos que por defecto aparezca un menú mostrando la lista de aplicaciones, entonces, hacemos lo siguiente:
- renombramos el index.php con el nombre de nuestro primer sistema (aplicacion1.php para el ejemplo).
- duplicamos ese archivo tantas veces sea necesario y lo renombramos con el nombre de los sistemas restantes (en este caso sólo falta la aplicación 2 así que lo renombramos a aplicacion2.php).
- creamos un nuevo archivo llamado index.html y dentro agregamos la lista de aplicaciones:
<!DOCTYPE html>
<html lang="es">
    <head>
        <meta charset="utf-8">
        <title>Mis aplicaciones en CodeIgniter</title>
        <style type="text/css">
            ::selection{ background-color: #E13300; color: white; }
            ::moz-selection{ background-color: #E13300; color: white; }
            ::webkit-selection{ background-color: #E13300; color: white; }
            body {
                background-color: #fff;
                margin: 40px;
                font: 13px/20px normal Helvetica, Arial, sans-serif;
                color: #4F5155;
            }
            a {
                color: #003399;
                background-color: transparent;
                font-weight: normal;
            }
            h1 {
                color: #444;
                background-color: transparent;
                border-bottom: 1px solid #D0D0D0;
                font-size: 19px;
                font-weight: normal;
                margin: 0 0 14px 0;
                padding: 14px 15px 10px 15px;
            }
            #body{
                margin: 0 15px 0 15px;
            }
            #container{
                margin: 10px;
                border: 1px solid #D0D0D0;
                -webkit-box-shadow: 0 0 8px #D0D0D0;
            }
        </style>
    </head>
    <body>
        <div id="container">
            <h1>Mis Sistemas</h1>
            <div id="body">
                <ul>
                    <li><a href="aplicacion1.php">Aplicación #1</a></li>
                    <li><a href="aplicacion2.php">Aplicación #2</a></li>
                </ul>
            </div>
        </div>
    </body>
</html>

Al final, deberíamos tener algo así:
/www
... sistemas
...... aplicacion1.php
...... aplicacion2.php
...... index.html
...... aplicacion1
......... models
......... controllers
......... views
......... otros directorios
...... aplicacion2
......... models
......... controllers
......... views
......... otros

y al acceder a localhost/sistemas, mostrarnos el menú.

Si tienes algún problema, no dudes en consultar.