본문 바로가기

졸업작품

리눅스 PHP 파일, 코드

우선 매일매일 DB 날짜를 추가하기 위한 PHP 파일이다. crontab으로 매일 파일을 실행한다.

crontab으로 정해진 시간에 동작 파일의 위치는 /var에 있다.


나머지 file structure



include/dbConnect.php

1
2
3
4
5
6
7
8
<?php
    header("Access-Control-Allow-Origin:*");
    $dbConnect = mysqli_connect('localhost','root','!4321','doDumbbells');
    if(mysqli_connect_error()){
        echo "연결 실패: ". mysqli_connect_error();
    }
    mysqli_select_db($dbConnect'doDumbbells');
?>
cs


include/session.php

1
2
3
<?php
    session_start();
?>
cs


include/del_session.php

1
2
3
4
5
6
<?php
    session_start();
    if(session_status()==PHP_SESSION_ACTIVE){
        session_destroy();
    }
?>
cs


member/loginsuc.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
    include "../include/session.php";
    header("Access-Control-Allow-Origin: *");
    include "../include/dbConnect.php";
 
    $memberId = $_POST['memberId'];
    $memberPw = $_POST['memberPw'];
    $sql = "select * from users where user_id='{$memberId}' and pw='{$memberPw}'";
    $res = $dbConnect->query($sql);
    $row = $res->fetch_array(MYSQLI_ASSOC);
 
    if($row != null){
        $_SESSION['ses_user_id']=$row['user_id'];
        echo json_encode(array('res'=>'good'));
    }
    else{
        echo json_encode(array('res'=>'bad'));
    }
?>
cs


member/memberIdCheck.php

1
2
3
4
5
6
7
8
9
10
11
12
<?php
    include "../include/dbConnect.php";
    header("Access-Control-Allow-Origin: *");
    $memberId = $_POST['memberId'];
    $sql = "SELECT * FROM member WHERE memberId = '$memberId'"//DB에 방금 입력된 아이디와 같은 아이디가 있는 지 확인.
    $res = $dbConnect->query($sql);
    if($res->num_rows >= 1){ //검색된 아이디가 1개라도 있으면 bad, 0개면 good
        echo json_encode(array('res'=>'bad'));
    }else{
        echo json_encode(array('res'=>'good'));
    }
?>
cs


member/memberSave.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
    header("Access-Control-Allow-Origin: *");
    include "../include/dbConnect.php";
 
    $memberId = $_POST['memberId'];
    $memberName = $_POST['memberName'];
    $memberPw = $_POST['memberPw'];
    $memberPw2 = $_POST['memberPw2'];
    $memberNickName = $_POST['memberNickName'];
    $memberEmailAddress = $_POST['memberEmailAddress'];
    $memberBirthDay = $_POST['memberBirthDay'];
    $memberChar = intval($_POST['memberChar']);
    $memberTel = $_POST['memberTel'];
    $memberJob = $_POST['memberJob'];
    $memberGender = $_POST['memberGender'];
    //PHP에서 유효성 재확인 아이디 중복검사.
    $sql = "SELECT * FROM users WHERE user_id = '$memberId'";
    $res = $dbConnect->query($sql);
    if($res->num_rows >= 1){
        exit;
    }
    //비밀번호 일치하는지 확인
    if($memberPw !== $memberPw2){
        exit;
    }else{
        //비밀번호를 암호화 처리.
        #$memberPw = md5($memberPw);
    }
    //닉네임, 생일 그리고 이름이 빈값이 아닌지
    if($memberNickName == '' || $memberBirthDay == '' || $memberName == '' || $memberNickName == '' || $memberChar == '' || $memberTel == '' || $memberGender == ''){
        exit;
    }
    //이메일 주소가 올바른지
    $checkEmailAddress = filter_var($memberEmailAddress, FILTER_VALIDATE_EMAIL);
    if($checkEmailAddress != true){
        exit;
    }
    $sql="INSERT INTO users(user_id,pw,nickname,name,email,tel,gender,job,birth,char_id) VALUES ('$memberId','$memberPw','$memberNickName','$memberName','$memberEmailAddress','$memberTel','$memberGender','$memnberJob','$memberBirthDay','$memberChar');";
    if($dbConnect->query($sql)){
        echo('회원가입 성공');
    }
?>
cs


records/intensityUp.php

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
    include "../include/session.php";
    include "../include/dbConnect.php";
    header("Access-Control-Allow-Origin: *");
 
    $sets=intval($_POST['sets']);
    $reps=intval($_POST['reps']);
    $rest_time=strval($_POST['rest_time']);
    $up_sql="update intensity set done_sets='{$sets}', done_reps='{$reps}', rest_time_sum=addtime(rest_time_sum,'{$rest_time}'), end_time=CURTIME(), workout_time=SUBTIME(time(end_time),time(start_time)) where intensity_id='{$_SESSION['ses_intensity_id']}'";
    $dbConnect->query($up_sql);
 
    echo json_encode(array('res'=>'good'));
?>
cs


records/monthrank.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
    header("Access-Control-Allow-Origin: *");
    include "../include/dbCon.php";
    try{
        $year = $_POST['year'];
        $month = $_POST['month'];
        if($month<10){
            $month='0'.$month;
        }
        $ym1=$year.'-'.$month.'-'.'01';
        $ym2=$year.'-'.$month.'-'.'31';
        $workout_id=intval($_POST['workout']);
        $sql="
            select (@rank:=@rank+1) as rank,nickname,sets,reps,weight,point,date
            from(
                select nickname,title,sets,reps,weight,done_sets*done_reps*weight as point,date
                    from intensity as i, users as u, dates as d,workout as w
                where i.user_id=u.user_id and w.workout_id=i.workout_id and w.workout_id=$workout_id and d.date_id=i.date_id and d.date>='".$ym1."' and d.date<='".$ym2."'
            ) as rankT, (select @rank:=0) as b";
 
        $res=mysqli_query($dbConnect,$sql);
        $result['success']=true;
        $i=0;
        $arr = array("rank","nickname","title","sets","reps","weight","point","date");
        while($row = mysqli_fetch_array($res)){ //fetch_array는 키 저장, 컬럼명 저장 방식이 라 배열에 두개 변수가 중복으로 저장된다
             $j=0;
            while($j<8){
                $result[$i][$j= $row[$arr[$j]];
                   $j++;
            }
            $i++;
        }
        $result['date']=$ym1;
    }catch(exception $e) {
        $result['success']  = false;
        $result['msg']      = $e->getMessage();
        $result['code']     = $e->getCode();
    } finally{
        echo json_encode($result,JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE);
    }
?>
cs


records/stackBar.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
    include "../include/session.php";
    include "../include/dbCon.php";
    header("Access-Control-Allow-Origin: *");
    try{
        $user_id = $_SESSION['ses_user_id'];
        $year = $_POST['year'];
        $month = $_POST['month'];
        $month='0'.$month;
        $ym1=$year.'-'.$month.'-'.'01';
        $ym2=$year.'-'.$month.'-'.'31';
        $sql="
            select title,sets,reps,weight,start_time,end_time,workout_time,date,day(date) as day    
            from intensity as i, dates as d, workout as w
            where i.date_id=d.date_id and i.workout_id=w.workout_id and d.date>='$ym1' and d.date<='$ym2' and i.user_id='$user_id'
            order by day";
        $res = $dbConnect->query($sql);
        $result['success']=true;
        $i=0;
        $arr = array("title","sets","reps","weight","start_time","end_time","workout_time","day");
        while($row = mysqli_fetch_array($res)){ //fetch_array는 키 저장, 컬럼명 저장 방식이 라 배열에 두개 변수가 중복으로 저장된다.
            $j=0;
            while($j<8){
                $result[$i][$j= $row[$arr[$j]];
                $j++;
            }
            $i++;
                        $result['notnull']=true;
        }
    } catch(exception $e) {
        $result['success']  = false;
        $result['msg']      = $e->getMessage();
        $result['code']     = $e->getCode();
    } finally {
        echo json_encode($result,JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE);
    }
?>
cs


records/womyrec.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
    include "../include/session.php";
    header("Access-Control-Allow-Origin: *");
    $con=mysqli_connect('localhost','root','!4321','doDumbbells');
    if(!$con){
        die('could not connect:' . mysqli_error($con));
    }
 
    mysqli_select_db($con,"doDumbbells");
    try{
        $wo = intval($_POST['workout']);
        $sql="
            SELECT d.date,sets,reps,weight    
            from dates as d, intensity as i, workout as w
            where d.date_id=i.date_id and i.workout_id='".$wo."' and i.workout_id=w.workout_id and i.user_id='".$_SESSION['ses_user_id']."' order by date";
        $res = mysqli_query($con,$sql);
        $result['success'= true;
        $i=0;
        while($row = mysqli_fetch_assoc($res)){
            $result[$i= $row;
            $i++;
        }
    }catch(exception $e){
        $result['success'= false;
        $result['msg'= $e->getMessage();
        $result['code'= $e->getCode();
    }finally{
        echo json_encode($result, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE);
    }
    mysqli_close($con);
?>
cs


records/setting.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
    include "../include/session.php";
    include "../include/dbConnect.php";
    header("Access-Control-Allow-Origin: *");
 
    $workout=$_SESSION['ses_workout_id']=$_POST['workout'];
    $sets=$_SESSION['ses_sets']=$_POST['sets'];
    $reps=$_SESSION['ses_reps']=$_POST['reps'];
    $weights=$_SESSION['ses_weights']=$_POST['weights'];
    $rest_time=$_SESSION['ses_rest_time']=$_POST['rest_time'];
    $date_sql="select max(date_id) as date_id from dates";
 
    $res=$dbConnect->query($date_sql);
    $row=$res->fetch_array(MYSQLI_ASSOC);
    $_SESSION['ses_date_id']=$row['date_id'];
    $insert_sql="insert into intensity(sets,reps,weight,rest_time,rest_time_sum,start_time,user_id,date_id,workout_id) values('{$sets}','{$reps}','{$weights}','{$rest_time}',0,curtime(),'{$_SESSION["ses_user_id"]}','{$_SESSION['ses_date_id']}','{$workout}')";
    $res=$dbConnect->query($insert_sql);
 
    $intensity_id="select max(intensity_id) as intensity_id from intensity where user_id='{$_SESSION['ses_user_id']}'";
    $res=$dbConnect->query($intensity_id);
    $row=$res->fetch_array(MYSQLI_ASSOC);
    $_SESSION['ses_intensity_id']=$row['intensity_id'];
 
    echo json_encode(array('res'=>'good'));
?>
cs


'졸업작품' 카테고리의 다른 글

타이젠 웹 앱 HTML  (0) 2018.11.09
타이젠 웹 앱 실행 화면  (0) 2018.11.09
리눅스 Database  (0) 2018.11.09
시스템 설계도  (0) 2018.11.08
아두이노 아령 설계도 및 코드  (0) 2018.11.08