Identificacion DB Externa

Identificacion DB Externa

de Nicolas Sabater -
Número de respuestas: 11

Hola amigos desarrolladores, escribo en el foro porque tengo una duda con este tema de IDENTIFICACIÓN EXTERNA por medio de BASE DE DATOS, en estos momentos estoy utilizando la ultima versión de moodle Moodle 2.2.1 (Build: 20120109). 

Mi duda es la siguiente, yo tengo una base de datos externa con mas de 200 alumnos funcionando perfectamente con moodle, pero no se como hacer esto:

Agrego 50 nuevos alumnos a MI base de datos y quiero registrarlos a un curso, NO puedo!! Porque no puedo? Porque hasta que el alumno no  ingrese una vez este no me figura en la base de datos de moodle. ¿Qué puedo hacer para pasar todos los alumnos de MI base de datos a la del moodle sin la necesidad de que los alumnos tengan que ingresar?


Saludos y muchas gracias por su tiempo.

Atte. Nicolas Sabater

Promedio de valoraciones: -
En respuesta a Nicolas Sabater

Re: Identificacion DB Externa

de David González -

Esos alumnos que deseas pasar a la base de datos, puedes incribirlos a un curso en tu moodle que funciona bien, respaldar el curso y restaurarlo en tu moodle 2.2.1 y con ello los alumnos ya estarán inscritos. Si tu otro moodle es 1.9 convierte el curso a mbz de preferencia. 

También puedes hacerlo exportándolos es decir: Administración del sitio - Usuarios - Cuentas- Acciones de usuario masivas. Ahí seleccionas a los usuarios le das en Agregar a la selección. Abajo del cuadro esta la opción de Descargar, le das clic en excel. Y una vez que ya los tienes, ahora en tu moodle a donde los quieres subir le das en Subir usuarios y ahi los subes puedes dejar solo los siguientes datos: firstname, lastname, email, username, password, course1(con este campo los puedes inscribir directo al curso con el nombre del corto del curso) y type1(que por lo general se llenan todos los campos con 1).

 

Saludos, espero te sirva

En respuesta a David González

Re: Identificacion DB Externa

de Nicolas Sabater -

David GRACIAS por tu tiempo, pero no es lo que busco parece que no me explique bien.

Explico de nuevo, lo que yo tengo es una base de datos ajena al moodle donde yo tengo mis alumnos (identificacion externa por medio de base de datos) y lo que pasa es que los alumnos no figuran en la plataforma hasta el primer logueo, lo que yo quiero es que al tenerlos en MI BASE DE DATOS AJENA A MOODLE ya figuren en el MOODLE sin la necesidad de que ingresen uno por uno..

Saludos, y gracias por responder!

En respuesta a Nicolas Sabater

Re: Identificacion DB Externa

de David González -

Cierto creo q entendí mal, pero checa este link http://docs.moodle.org/all/es/Autenticaci%C3%B3n_LDAP e posible que tengas esta opción en si y por eso te pida que tengan que logearse, Cambio de contraseña a la fuerza( Force change password), entonces pon la en no en la configuración del LDAP, es decir, Administración del sitio - Extensiones - Identificación - Usar servidor LDAP

En respuesta a Nicolas Sabater

Re: Identificacion DB Externa

de Iñaki Arenaza -
Imagen de Desarrolladores Imagen de Desarrolladores de plugins Imagen de Documentadores Imagen de Moderadores Imagen de Moodlers de gran ayuda
Hola Nicolas,

puedes usar el script auth/db/cli/sync_users.php para sincronizar todos los usuarios de tu base de datos externa con Moodle. Añadirá los que falten y borrará (si así lo configuras) los que sobre. Además actualizará los datos de los usuarios (nombre, apellidos, email, etc.) que hayas configurado a tal efecto.

Saludos.
Iñaki.
En respuesta a Iñaki Arenaza

Re: Identificacion DB Externa

de Edgar Cárdenas -

Hola Iñaki y Nicolas.

Desearía por favor, me pudieran señalar los pasos para realizar la sincronización con una base de datos externa y cómo configurarlo, pues para loguerase utiliso una base de datos externa, pero el problkema es que si en la base de datos externa se cambia por ejemplo el email del alumno, en moodle me crea otro usuario y no me actualiza la existente.

Gracias por la respuesta.

En respuesta a Iñaki Arenaza

Re: Identificacion DB Externa

de Magdalena Gómez -

Hola Iñaqui,

Al ejecutar el archivo auth/db/cli/sync_users.phpme da el siguiente error:

!!! Error al escribir a la base de datos !!!
Potential coding error - existing temptables found when disposing database. Must be dropped!

¿Puede ser que la base de datos tenga problemas? o ¿faltará algo en la configuración?

saludos,
María

En respuesta a Magdalena Gómez

Re: Identificacion DB Externa

de Raul Garcia Canet -

Hola Magdalena,

Por el mensaje yo diria que alguna tabla no se ha cerrado correctamente o que se ha quedado bloqueada en algun punto.

No deberia ser difícil de arreglar siempre que tengas acceso a la BD (con PHPmyadmin por ejemplo):
Accede a la BD, selecciona todas las tablas y en la parte inferior hay una lista deplegable. Selecciona de esa lista:
"Optimizar" o "Reparar".

Después del proceso, debería estar todo correcto.

Repite el proceso de sincronización.

Salu2

J. Raul (juagarc4) guay

En respuesta a Magdalena Gómez

Re: Identificacion DB Externa

de Edgar Cárdenas -

Hola espero puedan ayudarme.

Necesito sicronizar los usuarios de la base de datos de moodle con uno externo. ¿Cómo ejecuto el siguiente archivo: "auth/db/cli/sync_users.php" para sincronizar?

Al ejecutar desde la interfas de la web, me sale el siguiente mensaje:

"Command line scripts can not be executed from the web interface"

Gracias por todo.

En respuesta a Edgar Cárdenas

Re: Identificacion DB Externa

de Magdalena Gómez -

Hola Edgar,

Debes ejecutarlo desde la linea de comandos, creo

php auth/db/cli/sync_users.php 

saludos,

María Magdalena

En respuesta a Magdalena Gómez

Re: Identificacion DB Externa

de Edgar Cárdenas -

Gracias por responder.

Allí viene el problema. Trabajo en un hosting contratado, mi acceso al mismo es por CPANEL, cómo ejecutar en ella la línea d comandos?

En respuesta a Edgar Cárdenas

Re: Identificacion DB Externa

de Luis Suñol -

Hola Edgar.

Una forma rápida es desde el cron jobs.

Escribes el comando que quieres ejecutar, le configuras cuando ejecutarse y ya está.

Un saludo