jueves, 27 de noviembre de 2014

Error Uncaught exception 'PHPExcel_Reader_Exception' with message en libreria PHPExcel

Pues les cuento que justo en estos días estaba trabajando en un proyecto en PHP en el cual se debe generar un archivo excel a partir de una plantilla del mismo formato.
Entonces, lo que se debe hacer es:

Llamar las clases con las que se va a trabajar, para mi caso son suficientes:

require_once '../Classes/PHPExcel.php';
require_once '../Classes/PHPExcel/IOFactory.php';

Crear una instancia de la clase PHPExcel_IOFactory llamando al método load, el cual carga en el nuevo objeto el archivo base para trabajar en xlsx.

Aquí es donde viene el dolor de cabeza al famoso error

Uncaught exception 'PHPExcel_Reader_Exception' with message 'Could not open ../carpeta/archivoBase.xlsx for reading! File does not exist.' in /home/servidor/public_html/carpetaRaiz/carpetaAplicacion/Classes/PHPExcel/Reader/Excel2007.php:82

Resulta que en función de la versión de PHP que se este ejecutando, la manera como se pase esta cadena genera o no dicho error, es decir:

Si estoy en un servidor con PHP 5.5, admite pasar el parámetro de la función load a través de una variable...asi:

$ruta='../carpeta/archivoBase.xlsx'
$objPHPExcel = PHPExcel_IOFactory::load($ruta);

pero si es una versión de PHP inferior a esta, entonces se debe pasar así:

$objPHPExcel = PHPExcel_IOFactory::load('../carpeta/archivoBase.xlsx');

Se los dejo para que eviten todo lo que tuve que pasar...jeje

Saludos

Ah...no olviden comentar....!!!

martes, 28 de octubre de 2014

Conocer el valor de un radio button seleccionado

Bueno, hace ratico no escribo nada por aca; pues les cuento que trabajando un poquito en javascript en algún momento me encontre con la necesidad de verificar de un grupo de input de tipo radio button de html, cual de ellos estaba seleccionado y obtener su valor.

El código mas o menos quedo así:

Este es el nombre de la función que retorna el valor de dicha selección.
function retornarIdComparendo() {
Cargamos en la variable elementos los datos contenidos en el elemento terminarTabla que para mi caso es un div y dentro de el existe una lista de input radio button llamada idComparendo.
                var elementos = document.terminarTabla.idComparendo;
Aqui calculamos la cantidad de elementos
                var cantidad = elementos.length;
Acudimos a un ciclo, en este ciclo hacemos nuestra magia...jeje
                for (var i = 0; i < cantidad; i++) {
Asignamos a la variable elemento el radio button contenido en el número de ciclo, verificando si esta seleccionado. Esta línea devuelve un true o false dependiendo si el radio button esta o no seleccionado.
                    var elemento = document.terminarTabla.idComparendo[i].checked;
                    if (elemento === true) {
Finalmente retormanos el valor del radio button que esta selecionado y ...
                        return document.terminarTabla.idComparendo[i].value;
detenemos el ciclo.
                        break;
                    }
                }
            }

Gracias por leer el articulo, si tiene una mejor manera de hacerlo o mediante alguna libreria; por favor no dude en dejar sus comentarios sobre como mejorarlo en la sección correspondiente.