경희대학교 학부생 수강신청 도우미
개설 강의 목록과 강의평을 기반으로 조건에 맞는 최적의 시간표를 자동으로 구성해 주는 서비스입니다.
경희대학교 컴퓨터공학과 2016년 2학기 기초공학설계 수업의 일환으로 개발되었습니다.
- PHP 7.0 이상
- MySQL 혹은 MariaDB (InnoDB 지원)
CREATE TABLE IF NOT EXISTS `contact` (
`idx` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(10) NOT NULL,
`email` varchar(50) NOT NULL,
`msg` text NOT NULL,
`is_read` tinyint(1) NOT NULL DEFAULT '0',
`regdate` datetime NOT NULL,
PRIMARY KEY (`idx`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `login_fail` (
`idx` int(11) NOT NULL AUTO_INCREMENT,
`ipaddr` varchar(15) NOT NULL,
`regdate` datetime NOT NULL,
PRIMARY KEY (`idx`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `member` (
`idx` int(10) NOT NULL,
`name` varchar(20) NOT NULL,
`save` text NOT NULL,
`lastlogin` datetime NOT NULL,
`regdate` datetime NOT NULL,
PRIMARY KEY (`idx`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `session` (
`id` varchar(32) NOT NULL,
`access` int(10) NOT NULL,
`data` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `sugang` (
`idx` int(11) NOT NULL AUTO_INCREMENT,
`year` year(4) NOT NULL,
`term` int(2) NOT NULL,
`jungong` text NOT NULL,
`jungong_code` text NOT NULL,
`haksu_1` text NOT NULL,
`haksu_2` int(1) NOT NULL,
`haksu_3` text NOT NULL,
`haksu_4` text NOT NULL,
`lecture` text NOT NULL,
`lecture_code` text NOT NULL,
`professor` text NOT NULL,
`professor_code` text NOT NULL,
`hakjum` float(2,1) NOT NULL,
`timetable` text NOT NULL,
`type` text NOT NULL,
`language` text NOT NULL,
`special` text NOT NULL,
`score` float(5,2) DEFAULT NULL,
PRIMARY KEY (`idx`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Document Root는 public_html 폴더를 가르켜야 합니다.
app 폴더로의 접근은 불가능해야 합니다.
Apache의 경우 public_html 폴더에 .htaccess 를 아래와 같이 생성해 주세요.
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
Nginx의 경우 설정을 아래와 같이 변경해 주세요.
location / {
index index.php;
try_files $uri $uri/ /index.php?$args;
}
app/storage/cookie 를 707로 설정
app/config.php 를 서버 설정에 맞추어 변경
$config['db_address'] = ''; // DB서버주소 (예: localhost)
$config['db_user'] = ''; // DB유저
$config['db_password'] = ''; // DB비밀번호
$config['db_name'] = ''; // DB명
$config['db_port'] = '3306'; // 포트
$config['db_prefix'] = ''; // 접두사 (Default: 공백)
app/script/sugang.php 에서 include_once 부분은 서버의 절대경로에 맞게 수정
$year과 $term은 가져올 년도와 학기에 맞추어 수정
include_once '/home/sugang.khunet.net/app/config.php';
include_once '/home/sugang.khunet.net/app/bootstrap/001.medoo.php';
include_once '/home/sugang.khunet.net/app/bootstrap/002.database.php';
$year = "2017"; // 가져올 년도
$term = "10"; // 가져올 학기 (10: 1학기, 20: 2학기, 15: 여름학기, 20: 겨울학기)
app/script/evaluation.php 에서 include_once 부분은 서버의 절대경로에 맞게 수정
include_once '/home/sugang.khunet.net/app/config.php';
include_once '/home/sugang.khunet.net/app/bootstrap/001.medoo.php';
include_once '/home/sugang.khunet.net/app/bootstrap/002.database.php';
본 서비스에 사용된 오픈소스의 라이센스는 아래와 같습니다.
- Bootstrap 3.3.7 (MIT)
- Font-Awesome 4.7.0 (SIL OFL 1.1/MIT)
- Animate.css (MIT)
- pace (MIT)
- jQuery 1.9.1 (MIT)
- HTML5 Shiv 3.7.3 (MIT/GPL2)
- Respond.js 1.4.2 (MIT)
- scrollMonitor 1.2.0 (MIT)
서버 사정에 따라 기존의 sugang.khunet.net 으로의 접속이 불가능할 수 있습니다.
필요에 따라 자유롭게 수정, 사용, 배포하셔도 됩니다.
문의사항은 이메일로 보내주시기 바랍니다.