Uploading Resources

Post on 07-Feb-2016

78 views 0 download

description

Uploading Resources. Stewart Blakeway FML 213 blakews@hope.ac.uk. What we have done. myPhpAdmin Created a database Tables Fields Inserted Data Registration (this could be a student or tutor) Selected Data Used as part of the authentication process Session Variables - PowerPoint PPT Presentation

Transcript of Uploading Resources

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEUploading Resources

Stewart BlakewayFML 213blakews@hope.ac.uk

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEWhat we have done

• myPhpAdmin– Created a database– Tables– Fields

• Inserted Data– Registration (this could be a student or tutor)

• Selected Data– Used as part of the authentication process

• Session Variables– If the authentication process was successful

• The include statement– Makes our job much easier

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEWhat we have done so far

• Applying user levels to your current users table– Registering as a tutor– Registering as a student

• Dynamically displaying different menus/links dependent on the user– Authorising the tutor– Authorising the student

• Allowing a tutor to upload a list of students for registration

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEWhat we have covered

Ace training requires a new system for students that enrol onto their course(s). There will typically be three methods of enrolment: from a list, by a tutor, or by a student. Students that register themselves require authorising by the tutor. Tutors are created by administrator(s) after the credentials of the tutor has been checked. To become a course tutor the individual will register as a tutor. The tutor will have the facility of uploading various resources, such as powerpoint presentations and documents. Once uploaded they should either: be made available to the student, not available or available within a specified date range.

Satis

fact

ory

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEWhat will we do today?

• Allow tutor to upload a resource– Make available– Make available given date– Close

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PERecap

1. Create a connection to the SQL Server$conn = mysql_connect (“localhost”, “root”, “root”);

2. Select the databasemysql_select_db (“database” , $conn);

3. Construct the SQL statement$sql = (“what I want to do with the database”);

4. Execute the SQLmysql_query ($sql,$conn);

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEOur Database

acetraining

only accounts for students! What about tutors and administrators

user

userIDuserForenameuserSurnameuserEmailuserPassworduserTypeuserActive

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEWe need to expand our database

• There may be many resources– Each tutor will have resources– Resources are made available or not

• This could be within a set period

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEOur Database

acetraining

We have not considered multiple courses in this implementation

user

userIDuserForenameuserSurnameuserEmailuserPassworduserTypeuserActive

resource

userIDresourceNameresourceLocationresourceStartresourceFinish

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEshowTutorPage()function showTutorPage() { echo (" <p>You are logged in as a tutor, what would you like to do?</p> <form id='form1' name='form1' method='post' action='enrolStudent.php'> <p> <input type='radio' name='enrolStudent' id='enrolStudent' value='showWaiting' /> Show students waiting to be authorised for your course<br /> <input type='radio' name='enrolStudent' id='enrolStudent' value='enterManually' /> Enter student registration details manually<br /> <input type='radio' name='enrolStudent' id='enrolStudent' value='fromList' /> Enrol students from a list </p> <p> <input type='submit' name='button' id='button' value='Submit' /> </p> </form> "); }

<form id='form2' name='form2' method='post' action='uploadResource.php'>

<p><input type='radio' name='upload' id=upload'

value='upload' /> Upload Resource<br /> </p> <p>

<input type='submit' name='button' id='button' value='Submit' />

</p></form>

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEuploadResource.php

• What is the criteria?– make available?

• from start date / finish date

1. Get Resource2. Get Start Date (available from)3. Get Finish Date (available until)4. Construct SQL based on 1,2 and 3

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEgetResource() 1,2 and 3echo ("<form enctype='multipart/form-data' action='$_SERVER[PHP_SELF]' method='POST'><p>Choose a resource to upload: <input name='uploadedfile' type='file' /></p><p>Resource Name<input name='resourceName' type='text' /></p><p>Resource Available from<input name='s_dd' type='text' size='2' /> / <input name='s_mm' type='text' size='2' /> / <input name='s_yyyy' type='text' size='4' />(dd/mm/yyyy)</p><p>Resource Available until<input name='f_dd' type='text' size='2' /> / <input name='f_mm' type='text' size='2' /> / <input name='f_yyyy' type='text' size='4' /> (dd/mm/yyyy)</p><input type='submit' value='Upload File' /></form>");

Can you sketch out what would be displayed by the browser?

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEuploadFileandProcess() 4$target_path = basename($_FILES['uploadedfile']['name']);

if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) { echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded";

$conn = mysql_connect("localhost","root","root"); mysql_select_db("aceTraining",$conn);

$userID = $_SESSION['userID']; $resourceLocation = basename($_FILES['uploadedfile']['name']); $resourceName = $_POST['resourceName']; $startDate = $_POST['s_yyyy'] . "-" . $_POST['s_mm'] . "-" . $_POST['s_dd']; $finishDate = $_POST['f_yyyy'] . "-" . $_POST['f_mm'] . "-" . $_POST['f_dd'];

$sql = ("INSERT INTO resource (userID, resourceName, resourceLocation, resourceStart, resourceFinish) VALUES ('$_SESSION[userID]', '$resourceName', '$resourceLocation', '$startDate', '$finishDate')");

echo "<ul><li>" . $sql . "</li></ul>"; mysql_query($sql,$conn) or die(mysql_error()); }

From the form

Original Path namePath to

temporary file on the

server

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEWhat we have done

• Allowed the tutor to upload a resource– specified start date– specified finish date– specified resource location– specified resource name

• Next?– displaying available resources

• dependent on start and finish date

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEAssume student is logged in!

• display student page– we have prepared for this in login.php– function called showStudentPage()

• display resources available for download– ie, what the tutor has uploaded

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEshowStudentPage()$currentDate = date('Ymd');$conn = mysql_connect("localhost","root","root");mysql_select_db("aceTraining",$conn);$sql = ("SELECT * FROM resource");$records = mysql_query($sql,$conn) or die (mysql_error());

while ($currentResource = mysql_fetch_array($records)) { echo "<ol>"; if ((str_replace("-", "", $currentResource['resourceStart']) <= $currentDate) && (str_replace("-", "", $currentResource['resourceFinish']) >= $currentDate)) { echo ("<li>" . "<a href='" . $currentResource ['resourceLocation'] . "'>" . $currentResource['resourceName'] . "</a></li>"); }

echo ("</ol>"); }

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PESatisfactory

• We have done enough to pass the webpage criteria of the assessment– don’t forget you also have a report– and a presentation– and an exam

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PESatisfactory

• Student and Tutor can register– tutor must authorise student, administrator must authorise tutor

• Student and Tutor can log in• Tutor can

– authorise pending students– enrol students from a list– upload resources (powerpoint, documents, pdf, etc)– resources can be made available within a given period

• Students can– view available resources within the given period

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEConsiderations

• Tutors– we have not accounted for tutor(s) delivering multiple courses– we haven’t allowed for the tutor to change start and finish times (or

to delete) of uploaded files– we don’t allow the tutor to structure resources (weeks, content

type, file type)– Tutors can not change their details (email address, password)

• Students– we have not accounted for student(s) enrolled for a particular

course (or multiple courses)– we have not facilitated the tracking of student progress– we don’t allow the student to change their details

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PENext?

• Example code is online• Next week is a drop-in support session– students that can not get this working should

come and speak with me as soon as possible

www.hope.ac.uk Faculty of Sciences and Social Sciences

HO

PEAny Questions?

• Remaining time is for student support