這個學期,信息技術學科採用moodle做爲教學平臺,畢竟moodle是外國人開發的,用着總不習慣,好比學號。輸出的成績若是沒有學號在裏面,咱們一位老師要教4個班級可怎麼辦啊。咱們的學生是用學號爲用戶名的,可是在moodle的不少管理界面中是看不到用戶名。php 解決這個問題也走了一些彎路,先是修改了/grade/export/xls/下的grade_export_xls.php文件,將email替換爲username。由於email字段沒有什麼用,就直接輸出用戶名算了,暫時就這樣把期末的學生成績輸出。html 過了幾天,有點空了,總以爲這樣很差,由於看不到學號,像咱們這樣實施走班教學的,管理起來真的不方便。再次研究moodle,發現其有個idnumber,好像是閒置的,看看能不能利用起來。折騰了一下子,仍是感受這樣改代碼的方式總很差,哪天moodle升級了,我仍是要改代碼,不是一勞永逸的辦法。mysql 在我網上找資料,想看看其餘用moodle的同行是怎麼作的,結果發現有人在帖子中提到:sql Moodle的user表中有idnumber字段,曾經問過martin爲什麼不顯示學號的問題,他說國外不少學校學號都是屬於我的隱私,通常都是不顯示出來的。若是要作這個功能,須要在全局增長一個選項,而後在每個須要顯示學號的地方打補丁。數據庫 看來idnumber仍是有點用的,的確不該該動用。幸虧有一位同行提供了變通的好方法:安全 1.進入moodledata\lang\zh_cn_utf8文件夾,打開moodle.php文件,找到$string['firstname']='名';一行,將「名」改爲「姓名」。函數 2.找到$string['lastname']='姓';一行,將「姓」改爲「學號」。網站 3.以管理員身份登陸系統,進入安全性/網站策略,找到「全名格式」項,選擇「姓名+學號」。spa 4.此時,學生們已經能夠正常顯示姓名和學號了,但對於老師來講,沒有學號,但此項又是必填項,怎麼辦呢?能夠填入一個空格,或者是「老師」!htm 由於咱們的學生數據已經放在裏面了,只能在數據庫中動手腳了。看了一下mysql的資料,寫了如下兩行sql代碼,在phpmyadmin中搞定。 UPDATE`mdl_user`SETfirstname=concat(firstname,lastname)WHERELENGTH(username)>7 UPDATE`mdl_user`SETlastname=usernameWHERELENGTH(username)>7 代碼說明:concat爲合併,mysql不能向mssql同樣用+或者&就能夠合併的;LENGTH爲長度函數。 http://www.aieln.com/article-1415-1.html |