Vamos desempolvando un poco.

Pues, la verdad a pesar de tanto tiempo, sigo sin poder tener esas ideas lúcidas  para publicar los últimos proyectos y andanzas por este mundo tan grande de la programación, y menos ahora con miniproyectos y los estudios, mas el trabajo, además que no busco replicar información, y pues pronto ya veremos;ahora que estoy inmerso con otro lenguaje y pues claro! complementandose con el grandioso PHP, digan lo que digan; aunque me empeiza a picar el gusanito para poder comenzar mis primeros pasos con Phyton aunque por razones muy discutidas con algunos colegas aun no me decido a aprenderlo.

Ya veremos que pasa en el futuro próximo, por el momento solo puedo decir que tengo que volver con un buen tema y porciones de código que hagan mas facil la retroalimentación y la solución de lógicas de desarrollo para otros.

 

Happy Coding!

Retomando el curso?

Ya hace mucho tiempo atrás que no escribia ni publicaba algo. Pues no tengo mucho que decir, el mundo sigue igual que cuando me fui, o peor.

Yo sigo igual que cuando me fui, con un par de papeles enmarcados en las paredes que dicen que estoy capacitado para hacer algo para lo cual se hacer muy bien y en lo siguiente seguire preparadome más.

Y por un comentario bulicado me dan ganas de escribir, pero no me sale nada; pero no todo es malo, lo malo se está pasando, por suerte.

Muchas ideas, no hago ninguna, pero ahí están, solo espero que no salgan volando de la jaula que las contiene.

Muchos proyectos, pero ninguno termina de arrancar.

¿Trabajo? Incierto

¿Dinero? Poco, pero más del habitual.

¿Salud? Lo único que mantengo.

¿Amor? Como siempre, nulo.

¿Vida social? Nulo.

Bueno, hasta la proxima.

Conectar SQlite con PHP

Hola a todos nuevamente, hoy comentaré el codigo que he hecho, muy pequeño pero muy eficiente para pasar datos a una base de datos SQLite; como les había comentado, ando desarrollando mis habilidades con android y las bases de datos locales con esta plataforma son las indiscutibles, después de las peticiones HTTPS para uso constante de datos, asi que para empezar he hecho algo con una base de datos embebida en forma local. Pasando al código estuve observando que la correcta manipulación con estas bases de datos ahora es mucho mas estable con PDO a diferencia de las conexiones normales sqlite_open(), asi que para poder cargar un link «resource» para manipulación de datos quedaría de la siguiente forma:

try{
    /*** SQLite conexion  ***/
    $dbhandler = new PDO("sqlite:himnario.sqlite");
    echo "Handle creado ......";
}
catch(PDOException $e){
    echo $e->getMessage();
    echo "Base de datos no ha sido enlazada correctamente ...";
    die( "Consultas cerradas !!! $error");
}
echo "Base de datos enlazada correctamente ....";

Hasta aquí si la ultima línea es mostrada ¡éxito!; todo ha salido correctamente, ¿Pero?… ¿Cómo manipulados los datos?. Muy bien; hay dos formas de hacerlo usando «exec» ó «query»; bien,  la diferencia entre estos dos parámetros es que el primero ejecuta la consulta sin devolver información a excepción de las filas afectadas, es recomendable usar «exec» para INSERT, DELETE ó UPDATE y «query» es mejor para peticiones de datos mejor dicho SELECT.

$query = "select * from tabla";
foreach($dbhandler->query($query) as $row){
    echo $row[0]; //muestra el primer campo de cada registro
}

— Usando el parametro Exec() —

$query = "insert into tabla(columna1,columna2) values('campo1','campo2')";
//insertamos los datos, usamos excec porque no devolvera un resultado en caso contrario
$dbhandler->exec($query);

Y así podemos hacer operaciones básicas con sqlite y php, disfruten programando y experimentando con sus líneas de código.

Happy Codding!!! 🙂

Volviendo a revivir viejos tiempos

Pues si… Wow!!! Ya hacía tiempo que no escribía. ¿Por qué? No lo sé aún… aunque pensando en muchas cosas yo creo que pereza; y aunque he hecho muchas cosas en proyectos personales, cambiado de empleo y empezar nuevamente en la modalidad «freelance» y retomar algunos proyectos con otras personas para iniciar negocios y proyectos familares, no he estado tan alejado de la tecnología en lo absoluto, ultimamente si que no ha habido creo mas las ganas de escribir si no hasta que se ha publicado un comentario en una de las entradas de este blog. Aún así, creo que intentaré a ser mas constante en publicar mas mis proyectos y código que puede ser útil para ustedes como para mi y en algún futuro reutilizarlo,  mejorarlo, adaptarlo, etc.

Aunque quisiera extenderme hablando o mas bien escribiendo, como siempre programando en PHP, ya deje a un lado por un tiempo creo yo la plataforma NET y los proyectos que tuve mientras estuve de planta en una empresa, ahora estoy conociendo la plataforma Android; aunque en sus inicios por la modalidad y el lenguaje no me acostumbraba (para ser sinceros no me gusta JAVA)  y me fué frustrante el desarrollo de mi primera aplicación, conocí una alternativa a esta llamada Flash Builder…. Ya se!! ya se!!! es el odiado Flash, pero desde mi punto de vista pude desarrollar mas rápido y para distintas plataformas (Android, Windows Phone y iOS) y todo desde un solo IDE matas tres pájaros de un tiro a diferencia de aprender tres lenguajes diferentes para las plataformas y que Flash Builder puedas hacer todo desde ActionScript y empaquetarlo para todos las plataformas si que lleva sus ventajas aunque si… no lo niego tiene sus grandes desventajas, ya que depende de AIR, y bueno podría extenderme hablando de los puntos buenos y malos pero creo que será en otro momento, exponiendo código, aunque si… aclaro, vi la gran desventaja de que no sirve para proyectos grandes, pero seamos honestos; para el desarrollo de móviles siempre serán pequeños, por mas grandes que se quieran hacer.

Me gustaría publicar código que he generado en este tiempo de ausencia, pero ya iré buscando los momentos ahora que los horizontes que se vislumbran prometen mucho, creo que me he extendido más de la cuenta, estamos a un post de distancia :D.

 

Happy Codding!!!

Renombrar archivos masivamente en PHP

Hola nuevamente.

Pues ahora dentro de los proyectos que no paran, me salio un trabajo «complejo» por así decirlo, pero pues nada es difícil siempre y cuando haya la forma de resolverlo y aunque digan que es imposible, es que todavía hay una solución por encontrar; bueno, en esta ocasión se me atravesó en el camino una actualización de un sistema, concretamente actualizar indices de catálogos de un punto de venta, la cuestión era que se iba a re indizar la tabla de imágenes, porque no iba a ser posible implementar una mejora en el área administrativa, primeramente vino a la mente de forma manual, pero NO!!! debe haber una solución mas práctica, y efectivamente dicha imagen tenía un indice en el nombre de archivo, pero esta al actualizar cambiaba a un identificador nuevo asignado por el código del producto, bueno así que la solución fue generar la re indización de la pagina y con un script generar el renombrado masivo de imágenes, lo primero que hice fue exportar la tabla a un archivo separado por comas *.CSV y de ahí leerlo e ir buscando la imagen con ese indice y cambiarlo por el identificador del producto quedando mi script de la siguiente forma:

//archivo: fotos.php
if (($gestor = fopen("lista.csv", "r")) !== FALSE) {
    //abrimos el csv exportado de la lista de excel
    while (($datos = fgetcsv($gestor, 1000,",")) !== FALSE) {
    //leemos las lineas
        $buscar = $datos[0]; //asignación de nombre de imagen a buscar
        $renombra = $datos[1]; //nombre de imagen a reemplazar

        if(file_exists($buscar.".jpg")){ //buscamos las imágenes
        	echo "Encontrado:" .$buscar.".jpg " ; //si la encuentra
         	if(rename($buscar.".jpg", $renombra.".jpg")){ //la renombramos
                     //mostramos un mensaje de renombrado
                     echo "Renombrado:" .$buscar.".jpg por: ".$renombra.".jpg ";
               }
        }
    }
fclose($gestor); //cerramos el archivo
}

A grandes rasgos lo que hace el script es buscar la imagen con el indice anterior, si la encuentra lo renombre  con el nuevo código y vamos mostrando mensajes para ir confirmando que archivos se fueron actualizando, todo a partir de un archivo de datos; en este caso un archivo separado por comas, algo sencillo pero simple a la hora de estar re nombrando archivos de forma masiva, aunque existen herramientas ya especialmente diseñadas para esto, lo que me llevó al desarrollo de este script fue que en ese lugar estaba sin acceso a internet para poder buscar la herramienta lo que me llevó a escribir este pequeño script para poder solucionar el problema de una forma rápida y elegante.

Espero disfruten experimentando con el código como yo al hacerlo

Happy coding!!!