Hola amig@s,
estoy creando un módulo muy sencillo para familiarizarme con el entorno y con la programación, he creado un módulo llamado "Ejemplo" con un dos o tres posibilidades de configuración (Nombre, descripción y calificación).
Resulta que cuando lo creo y le doy a "guardar cambios" me da el siguiente error:
A required parameter (sesskey) was missing...
¿Alguien me puede decir por qué ocurre esto?
Gracias y un saludo!
Problema creando un ejemplo muy sencillo
Número de respuestas: 9Re: Problema creando un ejemplo muy sencillo
Hola Javier, no entiendo muy bien tu pregunta, ¿cuando le das a guardar cambios, a que te refieres, al editor con el que estás programando?
Da un poco más de información.
Un saludo!.
Da un poco más de información.
Un saludo!.
Re: Problema creando un ejemplo muy sencillo
Gracias por contestar Pablo,
no es en el editor. Ya tengo creado el módulo. Lo instalo en Moodle y luego lo añado como actividad. Cuando inserto el nombre, descripción y calificación (las únicas tres opciones que he puesto) le doy a guardar cambios y ahí es cuando me da el error.
Un saludo!
no es en el editor. Ya tengo creado el módulo. Lo instalo en Moodle y luego lo añado como actividad. Cuando inserto el nombre, descripción y calificación (las únicas tres opciones que he puesto) le doy a guardar cambios y ahí es cuando me da el error.
Un saludo!
Re: Problema creando un ejemplo muy sencillo
Prueba a poner a tu tabla un campo id int(10) autoincrement, y definelo como clave primaria, luego nos cuentas
Re: Problema creando un ejemplo muy sencillo
Hola Pablo.
ups, realmente estoy muy perdido....
A ver, yo solo quiero crear un módulo muy muy muy sencillo, tanto que solo tiene las tres opciones de configuración que comento en mi post anterior y que no haga nada. Es decir, lo único que quiero es:
- Integración en Moodle
- Ver que me muestra las opciones para poder configurar el módulo, introducirlas.
- Darle a guardar cambios y que me muestre una instancia.
Entonces, ¿me tengo que crear una tabla?
un saludo!!
Re: Problema creando un ejemplo muy sencillo
Hola Javier, si miras la estructura de los módulos, estos contienen un directorio llamado db, en dicho directorio se guardan unos script para crear las tablas que necesita tu modulo. Una vez que tengas esos script, las tablas se crean automáticamente cuando accedes al apartado de administración.
Lo que creo que has hecho es modificar el archivo mod.html, que un formulario que usa mod.php, y al crear la instancia llama a una función que hay definida en lib.php (en el directorio de tu modulo), a lo mejor te da ese error porque esa función todavía no está implementada y aunque lo esté no tienes creadas las tablas.
Espero no haber sido muy lioso.
Un saludo.
Por cierto, ¿te has bajado el archivo NEWMODULE.ZIP para empezar?, si no lo has hecho te lo recomiendo.
Lo que creo que has hecho es modificar el archivo mod.html, que un formulario que usa mod.php, y al crear la instancia llama a una función que hay definida en lib.php (en el directorio de tu modulo), a lo mejor te da ese error porque esa función todavía no está implementada y aunque lo esté no tienes creadas las tablas.
Espero no haber sido muy lioso.
Un saludo.
Por cierto, ¿te has bajado el archivo NEWMODULE.ZIP para empezar?, si no lo has hecho te lo recomiendo.
Re: Problema creando un ejemplo muy sencillo
Hola Pablo,
no has sido nada lioso! Te he entendido perfectamente. Me bajé el NEWMODULE.ZIP y desde ahí empecé, renombré todo lo que pedía el readme.txt y retoqué el mod.html como bien supones.
Lo que no entiendo es la necesidad de crear alguna tabla. Además, ¿me vale cualquier tabla? Porque si necesito crear alguna, bastaría alguna tabla super sencilla no?
Muchas gracias por contestar de nuevo y otro saludo!
Re: Problema creando un ejemplo muy sencillo
Buenas
si puedes crear una tabla super sencilla, pero yo supongo que por muy simple que sea hay que crearla, pero te recomiendo que hagas como dice el manual de estido de código y pongas un campo id como clave primaria autoincrementada.
También deberías editar en el archivo lib.php, la función add_instance.
Saludos
si puedes crear una tabla super sencilla, pero yo supongo que por muy simple que sea hay que crearla, pero te recomiendo que hagas como dice el manual de estido de código y pongas un campo id como clave primaria autoincrementada.
También deberías editar en el archivo lib.php, la función add_instance.
Saludos
Re: Problema creando un ejemplo muy sencillo
Gracias pablo, voy a probar esto, un saludo!
Re: Problema creando un ejemplo muy sencillo
Hola Javier,
leyendo la documentación (inglesa, http://docs.moodle.org/en/Coding) de cómo programar módulos en el punto 9 del apartado "Security issues (and handling form and URL data)" dice que es conveniente guardar en una variable oculta (<input type="hidden" name="sesskey" value="<?php echo sesskey(); ?>" />) la clave de la sesión para que Moodle pueda validar después si esta és correcta.
Espero haberte sido de ayuda.
Saludos.
leyendo la documentación (inglesa, http://docs.moodle.org/en/Coding) de cómo programar módulos en el punto 9 del apartado "Security issues (and handling form and URL data)" dice que es conveniente guardar en una variable oculta (<input type="hidden" name="sesskey" value="<?php echo sesskey(); ?>" />) la clave de la sesión para que Moodle pueda validar después si esta és correcta.
Espero haberte sido de ayuda.
Saludos.