SRL Archive - Web Development

Gradebook system


evergrey169

2011-06-26 16:11:18

Hello,

I have googled a lot but I could not find an example that would be near my case.

I am trying to make an online gradebook system for teachers and students. The teacher would be able to create a test results and add mark to each individual student in some sort of easy form.

Then the student would see only his mark from the test.

I know there will be needed a database to start with which is not a problem. However I am not sure where to start then.

Have anyone of you seen or come across something which might help me?

Thank you very much for your time and answers.

masterBB

2011-06-26 16:16:40

What are your programming experiences?

evergrey169

2011-06-26 16:43:34

I am experienced HTML and CSS user but i am really new to PHP. I can orient myself in a PHP code and I can see what parts of could can do. But I have never created any PHP myself (if you are not counting any Hello world! projects).

Floor66

2011-06-26 16:50:22

You'll probably be using MySQL. Start out simple, make a registration/login form to practice, for example.

A possible database structure;

`users` ; id, name, etc.
`tests` ; id, date, whatever.
`marks` ; id, user_id (the id of the person the mark belongs to), test_id (the test the mark belongs to)

You'll be looking to make quite a secure system because it's valuable information you're handling. Maybe add some sort of logging functionality to see who changed what and when.

evergrey169

2011-06-26 16:53:35

thank you, I had similar sections in mind. I am trying to build something really small but working and then adding more functions and possibilities.

My final goal is to successfully implement this gradebook system in to Joomla working website.

masterBB

2011-06-26 17:22:04

From: evergrey169
thank you, I had similar sections in mind. I am trying to build something really small but working and then adding more functions and possibilities.

My final goal is to successfully implement this gradebook system in to Joomla working website.


I don't have any experience with joomla and PHP combi. But PHP is the way to go. It's a relative easy to pick up language. If you have any problems with PHP, feel free to post them.

If I were you I would start working on the log in system. Make it display if your username and password match and if you are a student or a teacher. Then add sessions. The the log in system would be fully completed. If you succeed in this, the gradebook itself wouldn't be harder.

evergrey169

2011-07-11 16:29:59

Hi guys,

I have managed to use capabilities of Joomla and Moodle and combine those two to work really well. Now I am working on integrating more Moodle stuff into Joomla. Plus I would like to make it more pretty for students.

This is the code I use for showing student's marks from a specific course. It shows the name of the test (itemname) and the grade (finalgrade):

<?php defined('_JEXEC') or die('Restricted access'); ?>

<?php
require_once(JPATH_SITE.DS.'components'.DS.'com_joomdle'.DS.'helpers'.DS.'content.php');


$moodle_xmlrpc_server_url = $this->params->get( 'MOODLE_URL' ).'/mnet/xmlrpc/server.php';


$user = & JFactory::getUser();
$id = $user->get('id');
$username = $user->get('username');

?>
<table cellpadding="4" cellspacing="0" border="0" align="left" class="contentpane<?php echo $this->params->get( 'pageclass_sfx' ); ?>">
<?php


$course_info = JoomdleHelperContent::call_method ("get_course_info", $this->course_id);
?>
<tr>
<td width="300" colspan="5" height="40" class="sectiontableheader<?php echo $this->params->get( 'pageclass_sfx' ); ?>">

<?php echo $course_info['fullname']; ?>
</td>

</tr>
<tr><td></td></tr>
</table><br />
<table width="100%" cellpadding="4" cellspacing="0" border="0" align="center" class="contentpane<?php echo $this->params->get( 'pageclass_sfx' ); ?>">
<?php
$tareas = JoomdleHelperContent::call_method ("get_user_grades", $username, $this->course_id);

$odd = 0;
if (!$tareas)
echo "<tr><td><br></td></tr>";
foreach ($tareas as $tarea) :
if ($tarea['itemname']) :
?>

<tr class="sectiontableentry<?php echo $odd + 1; ?>">
<?php $odd++; $odd = $odd % 2; ?>
<td width="300" height="80">
<?php echo $tarea['itemname']; ?><br />
</td>

<td height="80">
<?php echo $tarea['finalgrade']; ?>

</td>

</tr>
<tr><td></td></tr>
<?php endif; ?>
<?php endforeach; ?>
</table>

I would like to make it more fancy. Is there a way how to show this code: <?php echo $tarea['finalgrade']; ?> in some sort of lightbox-like effect? I would like to use it when I get other variables working like feedback and comments.

I am not sure if it is possible but thank you for your answers!!!