Upload
evette
View
62
Download
0
Embed Size (px)
DESCRIPTION
Uploading Resources. Stewart Blakeway FML 213 [email protected]. 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
Citation preview
www.hope.ac.uk Faculty of Sciences and Social Sciences
HO
PEUploading Resources
Stewart BlakewayFML [email protected]
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