본문 바로가기

Computer/Programing

Mysql 입력 출력

데이터를 저장하기


<?php

function connect_db()

{

   $server="localhost";

   $dbname="DB이름";

   $uid="SQL계정ID(Root)";

   $pwd="비밀번호";

   $conn = @mysql_connect($server, $uid, $pwd);


   if(!$conn)

        die("Unable to connect to the database.");


   $select = mysql_select_db($dbname, $conn);


   return($conn);

}


$conn=connect_db();


// 날짜를 불러와서 연월일시분초 단위로 $record에 저장

date_default_timezone_set("Asia/Seoul");

$tdate=date("Ymd");

$tclock=date("His");

$record=date("YmdHis");


//check.py를 실행해서 "|" 단위로 분리하여 $data에 저장 

$checka= escapeshellcmd('/var/www/check.py');

$checkb = shell_exec($checka);

$data=explode("|", $checkb);


//시간, data[0] ~ data[2] 까지 LOG 테이블에 있는 recorddate,temp,hum,lig 에 저장

// 문자일경우 앞 뒤에 ' 를 추가해야함


if($data[0] > 0) {

mysql_query('set names utf8');

    $sql ="INSERT INTO log (recorddate,temp,hum,lig) VALUES ($record,$data[0], $data[1],$data[2])";

    $rs=mysql_query($sql, $conn);

    if (!$rs) die("MYSQL: ".mysql_error($conn)."<br><b>$sql</b>");

} else

    echo "No data. Please try again";


?>



데이터를 불러오기


<?php

$mysql_host = 'localhost';

$mysql_user = 'SQL계정ID(Root)';

$mysql_password = '비밀번호';

$mysql_db = 'DB이름';


// 접속

$conn = mysql_connect($mysql_host, $mysql_user, $mysql_password);

$dbconn = mysql_select_db($mysql_db, $conn);


// charset 설정, 설정하지 않으면 기본 mysql 설정으로 됨, 대체적으로 euc-kr를 많이 사용

//mysql_query("set names utf8");


$sql="

select * from (

SELECT DATE_FORMAT( recorddate,  '%m-%d %HH' )  mdh , COUNT( * ) cnt, SUM( temp), round(SUM( temp ) / COUNT( * ),2)  atemper,SUM( hum) , round(SUM( hum ) / COUNT( * ),2)  ahum, SUM( lig) , round(SUM( lig ) / COUNT( * ),2)  alig

FROM  `log`

GROUP BY DATE_FORMAT( recorddate,  '%Y%m%d%H' )

order by recorddate desc

limit 24

) t_a

order by t_a.mdh

";


echo $sql;