2018년 10월 18일 목요일

php 두 날짜(시분초)의 차이, 몇 초 차이인지 계산해주는 함수, strtotime


php 두 날짜(시분초)의 차이, 몇 초 차이인지 계산해주는 함수

/* *
 @param $stDateHms : 작은 년-월-일 시:분:초 : 2017-01-01 12:13:03
 @param $etDateHms : 더큰 년-월-일 시:분:초 : 2018-03-03 11:10:12
 @return 초 값, -이면 *-1해서 사용한다 floor(), round() 이용
 */
function fnDateDiffSecond($stDateHms, $etDateHms){
$chaiSeconds = strtotime($stDateHms)-strtotime($etDateHms); // 현재시간에서 작성된 시간을 뺌

// echo date('H시 i분 s초 지났습니다.', $chaiSeconds);

return $chaiSeconds;
}


// 호출 예제
$lcSeconds = fnDateDiffSecond (
fnFormatDate($row2[enter_date], "-")." ".fnFormatHms($row2[enter_hms], ":"),
fnFormatDate($row2[end_date], "-")." ".fnFormatHms($row2[end_hms], ":")
);


2018년 10월 1일 월요일

php에서 utf8로 넘어 온 한글을 euckr php에서 변환처리 iconv 이용


php에서 utf8로 넘어 온 한글을 euckr php에서 변환처리 iconv 이용 

example )
$strOrdNm = iconv("utf8", "euckr", $strOrdNm);
$strSvcNm = iconv("utf8", "euckr", $strSvcNm);
$strPName = iconv("utf8", "euckr", $strPName);

이렇게 하니 한글이 깨지지 않고 잘 나와요~ 


안드로이드에서 AppCompatActivity 타이틀 바 없애기, getSupportActionBar


안드로이드에서 AppCompatActivity 타이틀 바 없애기

일반 Activity 방법으로는 타이틀 바가 사라지지 않아요

/* * 
   @타이틀바를 제거해줘요  
*/
public synchronized void clearTitleBar(){
   try{
      // 첫번째 방법      
      // Window win = getWindow();      
      // win.requestFeature(Window.FEATURE_NO_TITLE);

      // 두번째 방법      
      // this.requestWindowFeature(Window.FEATURE_NO_TITLE);
      
      // 세번째 방법      
      ActionBar actionBar = getSupportActionBar();
      actionBar.hide();
   }catch(Exception e){
      Log.i(TAG, ">clearTitleBar : " + e.toString());
   } 
} 


위의 세번째 방법으로 해야 타이틀 바가 사라져요~ 


have a nice day~ 





2018년 9월 30일 일요일

안드로이드 Frament Activity 호출시 style Theme 에러 , [ Theme.AppCompat ]


안드로이드 Frament Activity 호출시 style Theme 에러 , [ Theme.AppCompat ] 

해법 )

<activity android:name=".MainFragmentActivity"   
    android:screenOrientation="portrait"   
    android:theme="@style/Theme.AppCompat"   
    android:windowSoftInputMode="adjustPan" /> 



android:theme="@style/Theme.AppCompat" 

이 부분을 추가해주니 해결됐어요 ~ 



2018년 9월 25일 화요일

자바스립트, 날짜 특정 포맷으로 출력해주기 Date format


자바스립트, 날짜 특정 포맷으로 출력해주기 Date format 

// 날짜를 특정 포맷으로 return 해준는 소스 START
Date.prototype.format = function (f) {
if (!this.valueOf()) return " ";
var weekKorName = ["일요일", "월요일", "화요일", "수요일", "목요일", "금요일", "토요일"];
var weekKorShortName = ["일", "월", "화", "수", "목", "금", "토"];
var weekEngName = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];
var weekEngShortName = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
var d = this;
return f.replace(/(yyyy|yy|MM|dd|KS|KL|ES|EL|HH|hh|mm|ss|a\/p)/gi, function ($1) {
switch ($1) {
case "yyyy": return d.getFullYear(); // 년 (4자리)
case "yy": return (d.getFullYear() % 1000).zf(2); // 년 (2자리)
case "MM": return (d.getMonth() + 1).zf(2); // 월 (2자리)
case "dd": return d.getDate().zf(2); // 일 (2자리)
case "KS": return weekKorShortName[d.getDay()]; // 요일 (짧은 한글)
case "KL": return weekKorName[d.getDay()]; // 요일 (긴 한글)
case "ES": return weekEngShortName[d.getDay()]; // 요일 (짧은 영어)
case "EL": return weekEngName[d.getDay()]; // 요일 (긴 영어)
case "HH": return d.getHours().zf(2); // 시간 (24시간 기준, 2자리)
case "hh": return ((h = d.getHours() % 12) ? h : 12).zf(2); // 시간 (12시간 기준, 2자리)
case "mm": return d.getMinutes().zf(2); // 분 (2자리)
case "ss": return d.getSeconds().zf(2); // 초 (2자리)
case "a/p": return d.getHours() < 12 ? "오전" : "오후"; // 오전/오후 구분
default: return $1;
}
});
};

String.prototype.string = function (len) { var s = '', i = 0; while (i++ < len) { s += this; } return s; };
String.prototype.zf = function (len) { return "0".string(len - this.length) + this; };
Number.prototype.zf = function (len) { return this.toString().zf(len); };
// 날짜를 특정 포맷으로 return 해준는 소스 END


호출 
var dtSetYMD = tDate.format("yyyyMMdd");
var dtSetHMS = tDate.format("HHmmss");

결과 
년월일 : 20180930
시분초 : 121312

자바스크립트 년, 월, 일, 시, 분, 초 구하기 , new Data


자바스크립트 년, 월, 일, 시, 분, 초 구하기 

<script type="text/javascript">
var dt = new Date();

document.write('오늘 년: ' + dt.getFullYear() + '<br />');
document.write('오늘 월: ' + (dt.getMonth() + 1) + '<br />');
document.write('오늘 일: ' + dt.getDate() + '<br />');

document.write('<br />'); // 줄바꿈

document.write('오늘 시: ' + dt.getHours() + '<br />');
document.write('오늘 분: ' + dt.getMinutes() + '<br />');
document.write('오늘 초: ' + dt.getSeconds() + '<br />');

document.write('<br />');

document.write('오늘 요일: ' + dt.getDay() + '<br />'); // 일요일 = 0

</script>



자바스크립트, 날짜 일, 시간, 분 더하기


자바스크립트, 날짜 일, 시간, 분 더하기

example ) 
var jDate = new Date("2018/09/15 11:29:23");
jDate.setDate(jDate.getDate()+1); // 날짜(일) 더하기 (day)
jDate.setHours(jDate.getHours()+6); // 시간 더하기     (hour)
jDate.setMinutes(jDate.getMinutes()+30);   // 분 더하기        (minutes)
alert( jDate );

유의사항 
위에 년월일을 2018-10-30 일 형식으로 표기가 아닌, 2018/10/30 형식으로 등록해주어야 연산이 돼요



2018년 5월 22일 화요일

배달대행, 원스탑 서비스를 원한다 ( 안정성 + 원스탑 서비스 )


배달대행 프로그램의 원 스탑 서비스
( 서비스가 안정적이며, 원스탑 서비스가 가능한 배달대행 프로그램 )

배달대행 업체들이 많고, 저렴하게 서비스를 제공하는 업체들도 생겨나고 있어요

저렴한건 잠시 잠깐 사용하고, 후에 사세가 커지면 고품질의 원스탑서비스로 갈아타신다 한다

콜 등록
콜 캐치
카드결제
세금처리
출금서비스

+ 업소소개 어플 ( 배달의 민족이나, 요기오와 같은 주문접수 프로그램 )

여기까지 되는 서비스를 배달대행 하는 많은 사장님들이 원하고 있어요,

중요한 부분은 배달대행 프로그램 서버가 안정적이어야 한다

고가를 들여서 만든 프로그램도 일이 폭주할 때는 간간히 서버가 다운된다고 한다

앞으로는 안정적이고, 원스탑 서비스가 되는 배달대행 프로그램이 시장을 선두해 나간다고 사장님들이 얘기하신다

즐거운 시간 보내세요~