csc122 - term project presentation, fall 2005 advanced personal organizer 1 web database systems...
TRANSCRIPT
![Page 1: Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1 Web Database Systems Term Project Presentation Advanced Personal Organizer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e265503460f94b169cf/html5/thumbnails/1.jpg)
Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1
Web Database Systems
Term Project Presentation
Advanced Personal Organizer
Andreas Mueller
Fall 2005
California State University Sacramento
![Page 2: Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1 Web Database Systems Term Project Presentation Advanced Personal Organizer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e265503460f94b169cf/html5/thumbnails/2.jpg)
Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 2
Presentation Outline
- Advanced Personal Organizer – An Introduction
- Design and Models
- The 3-tier Architecture
- Implementation Details
- Demo
![Page 3: Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1 Web Database Systems Term Project Presentation Advanced Personal Organizer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e265503460f94b169cf/html5/thumbnails/3.jpg)
Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 3
Introduction (1) – An APO
web-based system for managing:
- bookmarks- appointments- contacts- emails- files- notes
- allows multiple users at the same time- personalized account settings
![Page 4: Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1 Web Database Systems Term Project Presentation Advanced Personal Organizer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e265503460f94b169cf/html5/thumbnails/4.jpg)
Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 4
Introduction (2)
![Page 5: Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1 Web Database Systems Term Project Presentation Advanced Personal Organizer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e265503460f94b169cf/html5/thumbnails/5.jpg)
Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 5
Entity-Relationship-Diagram
![Page 6: Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1 Web Database Systems Term Project Presentation Advanced Personal Organizer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e265503460f94b169cf/html5/thumbnails/6.jpg)
Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 6
3-tier Architecture
Presentation
Logical
Data MySQL-DBMS
PHP 4.0
HTML, Javascript
![Page 7: Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1 Web Database Systems Term Project Presentation Advanced Personal Organizer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e265503460f94b169cf/html5/thumbnails/7.jpg)
Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 7
The Data-Tier – MySQL DBMS
DB-Tables:
bookmarks bookmarks_cat calendar contacts contacts_cat email files_cat notes notes_cat rss_newsreader sessionvars user_profile users
CREATE TABLE bookmarks ( id int(128) NOT NULL auto_increment, user_id int(11), cat int(11), url varchar(128), name varchar(128), description varchar(128), PRIMARY KEY (id) ) TYPE=MyISAM;
CREATE TABLE bookmarks_cat ( catid int(11) NOT NULL auto_increment, user_id int(11), category varchar(64), PRIMARY KEY (catid), UNIQUE KEY user_id (user_id,category)) TYPE=MyISAM;
CREATE TABLE email ( id varchar(64), user_id int(11), seen tinyint(1), answered tinyint(1) , PRIMARY KEY (id)) TYPE=MyISAM;
CREATE TABLE user_profile ( id int(5) NOT NULL default '0', last_name varchar(64), first_name varchar(64), email varchar(64), fTZ int(11), sTZ int(11), popsvr varchar(80), user varchar(40), passwd varchar(40), email_add varchar(80), invite_text text, PRIMARY KEY (id)) TYPE=MyISAM;
![Page 8: Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1 Web Database Systems Term Project Presentation Advanced Personal Organizer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e265503460f94b169cf/html5/thumbnails/8.jpg)
Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 8
Implementation (1)
File-Organisation:
- 2 classes for the session-management
- one class for every module
- config-files
- language files
/var/www:
classes config includes styles
header.php index.php login.php register.php system_XXX.php
![Page 9: Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1 Web Database Systems Term Project Presentation Advanced Personal Organizer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e265503460f94b169cf/html5/thumbnails/9.jpg)
Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 9
Implementation (2) – Sending an Email
function send_email($servername, $emailaddress, $username, $password, $last_name, $first_name, $to, $cc, $su, $ms){ if (!empty($cc))$to=$to.",".$cc;$to_array=explode(",",$to);
$smtp = fsockopen($servername, 25);fputs($smtp, "HELO $servername \r\n");fputs($smtp, "AUTH LOGIN\r\n");fputs($smtp, base64_encode($username)."\r\n");fputs($smtp, base64_encode($password)."\r\n");fputs($smtp, "MAIL FROM: $emailaddress \r\n");for ($i=0;$i<count($to_array);++$i){ fputs($smtp, "RCPT TO: <$to_array[$i]> \r\n");} fputs($smtp, "DATA \r\n");fputs($smtp, "to: $to \r\n");fputs($smtp, "Subject: $su \r\n");fputs($smtp, "cc: $cc \r\n");fputs($smtp, "From: $first_name $last_name <$emailaddress> \r\n\r\n");fputs($smtp, "$ms \r\n\r\n"); fputs($smtp, ".\r\n");fputs($smtp, "QUIT\r\n");fclose($smtp);
![Page 10: Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1 Web Database Systems Term Project Presentation Advanced Personal Organizer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e265503460f94b169cf/html5/thumbnails/10.jpg)
Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 10
Implementation (3) - The Language File
$emails_actions_startpage_0_0 = "compose email";$emails_actions_startpage_1_0 = "reply to sender";$emails_actions_startpage_2_0 = "mark as read";$emails_actions_startpage_3_0 = "mark as unread";$emails_actions_startpage_4_0 = "delete email";
global $language, ${ 'emails_actions_startpage_0_' . $language}, ${ 'emails_actions_startpage_1_' . $language}, ${ 'emails_actions_startpage_2_' . $language}, ${ 'emails_actions_startpage_3_' . $language}, ${ 'emails_actions_startpage_4_' . $language};
<input type=“submit” name=“comp” value=“ '.${ 'emails_actions_startpage_0_' . $language}.‘ ",>
english.php
system_email.php
![Page 11: Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1 Web Database Systems Term Project Presentation Advanced Personal Organizer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e265503460f94b169cf/html5/thumbnails/11.jpg)
Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 11
Evaluation and Conclusion
- userfriendly web-based Organizer
- multiple users / different views
- common 3-tier Architecture
- easy to maintain (Object-Oriented)
- Extensible
![Page 12: Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1 Web Database Systems Term Project Presentation Advanced Personal Organizer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e265503460f94b169cf/html5/thumbnails/12.jpg)
Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 12
Questions and Demo
any Questions?
...
No?
...
ok let‘s do the Demo!