Archive for the ‘Desarrollo’ Category

Montar una carpeta compartida de Windows en Linux

jueves, febrero 28th, 2013

Cuando la necesidad de compartir carpetas entre distintos sistemas operativos aparece hay que crear primero el montaje y luego asegurarse que ante un reinicio esto continúe igual.

En nuestro caso, por una necesidad especifica de que una aplicacion en Linux guarde información en un fleserver en windows, secrea la necesidad de montar en linux esta carpeta.

El proceso es más o menos así:

Se crea la carpeta compartida
Se monta
Se agrega al /etc/fstab para que al reinicio se conecte, sin necesidad de montarla manualmente

En comandos linux se traduciría

mkdir -p /mnt/carpetaWindows
mount -t cifs //servidorWindows/carpetaDisponibilizada -o username=usuario_con_permiso,password=clave_del_usuario,file_mode=0664,dir_mode=0777 /mnt/carpetaWindows

Y en el archivo /etc/fstab incluir

//servidorWindows/carpetaDisponibilizada /mnt/carpetaWindows cifs username=usuario_con_permiso,password=clave_del_usuario,file_mode=0664,dir_mode=0777

Ejecutando comando remoto en Linux

miércoles, febrero 27th, 2013

Cuando tienes la necesidad de ejecutar un comando en otro servidor, puedes hacerlo a traves del comando SSH de la siguiente forma.

ssh usuario@nombre_host_o_ip comando

Ahora si quieres ejecutar algo remoto a través de un script, debes hacerlo pero intercambiando las claves públicas de los dos servidores

Encriptando password para Moodle 2.x

miércoles, febrero 27th, 2013

Si es que debes asumir el riesgo de saltarte las API y los Webservices que están para moodle, tambien debes preocuparte del encriptamiento correcto de la password de moodle a la hora de la insercion de un usuario de autenticación manual. Tiene que ver con la generacion en MD5 más una variable presente en el config.php de moodle.

$default=MD5('default'.$CFG->passwordsaltmain);

Insertar/actualizar un CLOB/BLOB en Oracle con PHP

martes, febrero 26th, 2013

Este es el codigo que me dió finalmente resultado para la insercion de un CLOB de Oracle a través de PHP.

$valor='hola';
$conn= oci_connect($USER, $PASSWD, $CONNECTION);
$query= "Insert into tabla (ID, DATA) values (1,empty_clob()) RETURNING DATA INTO :aClob";
$stid= oci_parse($conn, $query);
$clob = oci_new_descriptor($conn, OCI_D_LOB);
oci_bind_by_name($stid, ":aClob", $clob, -1, OCI_B_CLOB); 
$r= oci_execute($stid, OCI_DEFAULT);
$clob->save($valor);
oci_commit($conn); 
$clob->free();
oci_free_statement($stid);

Split en PHP

martes, febrero 26th, 2013

La funcion explode es la forma actual que se tiene para hacer un split en php, este devuelve un arreglo con la cantidad de elementos que resultan de encontrar el caracter separador. En mi caso tuve que encontrar la @ para poder separar el nombre de usuario del servidor. Basado en esto:

$email_separado = explode('@',$email_a_separar);
$nombreUsuario= $email_separado[0]; 
$servidor =  $email_separado[1];

Validar email con PHP

martes, febrero 26th, 2013

Buscando las forma más seguras de validar email dentro de php, paseandome por un monton de expresiones regulares encontre una linea que me ha funcionado perfectamente (valida para php 5.x)

if(filter_var($email_a_validar, FILTER_VALIDATE_EMAIL)){
  //exito
}