2013. 11. 26. 13:16

PHP 일자연산 방법


strtotime 함수를 이용하여 일자 연산이 가능하다.


$used_date = date("Y-m-d", strtotime($list['used_time']));

$valid_time = date("Y-m-d", strtotime($used_date.'+'.$list['valid_time'].' day'));


위의 경우 $list['used_time'] 에는 YYYY-mm-dd H:m:s 형식 스트링의 데이터가 들어있다.

이런 데이터를 PHP의 date 형식으로 변환하기 위해서 위와같이 date 방식으로 변환해서 $used_date 변수에 넣는다.

PHP date 단위 연산을 위해서는 date 변수형으로 변경되어야 하기 때문!!

그리고 다시 strtotime을 이용하여 연산이 가능하다.


Ex) strtotime(YYYY-mm-dd, -1 day)


이런방법으로 사용이 가능하다.




Posted by 은돌군
2013. 11. 21. 11:38

마찬가지로 계속 찾아보기 귀찮아서 ㅎㅎ


# Html Table 내부에 <td> 태그와 <tr> 태그의 속성


<td> 태그 속성 

 속 성

의 미 

align 

셀의 수평 정렬 방식 지정

(속성값 : left(디폴트), right, center) 

valign 

셀의 수직 정렬 방식 지정

(속성값 : middle(디폴트), top, bottom)

 rowspan

행 합치기 

colspan 

열 합차기 

width 

각 셀의 가로 길이 지정 

height 

각 셀의 세로 길이 지정 

bgcolor 

각 셀의 색상 지정 

background 

셀의 배경 이미지 지정 





<tr> 태그 속성 

 속 성

의 미 

align 

한행 전체의 수평 정렬 방식 지정

(속성값 : left(디폴트), right, center) 

valign 

한행 전체의 수직 정렬 방식 지정

(속성값 : middle(디폴트), top, bottom)

width 

한 행의 가로 길이 지정 

height 

한 행의 세로 길이 지정 

bgcolor 

한행 전체의 색상 지정

background 

한행 전체의 배경 이미지 지정


Posted by 은돌군
2013. 11. 8. 17:14
작업할때마다 까먹어서 추가!! 꼭 까먹을만하면 다시 사용하게 되는군요 ㅎ

CString char2CString(char* inp)

{

int len;

CString str;

BSTR buf;


len = MultiByteToWideChar(CP_ACP, 0, inp, (int)strlen(inp), NULL, NULL);

buf = SysAllocStringLen(NULL, len);

MultiByteToWideChar(CP_ACP, 0, inp, (int)strlen(inp), buf, len);

str.Format(_T("%s"), buf);


return str;

}



char* CString2char(CString& str)

{

long len = str.GetLength();

len = len*2;

char* szTemp = new char[len+1];

memset(szTemp, 0, len+1);

USES_CONVERSION;

strcpy(szTemp, T2A(str));


return szTemp;

}

Posted by 은돌군
2013. 11. 4. 16:34
SELECT 박스의 Option Text 내용을 가져오는 코드입니다.

<script>
    function Send() {
        var formMapIdObj = document.formMapID;
        var formMapIdOptionObj = formMapIdObj.selMap.options;
        var formMapIdIndex = formMapIdOptionObj.selectedIndex;
    }
</script>

<form name = "formMapID">
    <tr bgcolor=#83CC87 height = "30">
        <td width="25%" align="center"><b>Map ID</b></td>
        <td colspan="2" align="center">
            <select style="WIDTH:98%" name="selMap" id='selMap' OnChange="javascript:changeMapID();">
                <?php
                if(!$ret) {
                ?>
                    <option value="error">mapID data loading failed!</option>
                <?php
                } else {
                    $result = mysql_fetch_row($ret);
                    $default_value = $result[1];
                    do {
                ?>
                        <option value="<?php echo $result[1]; ?>"><?php echo $result[0]; ?></option>
                <?php
                    } while($result = mysql_fetch_row($ret));
                }
                ?>
            </select>
        </td>
    </tr>
</form>




Posted by 은돌군
2013. 10. 28. 11:14

노트북이나 넷북의 경우, 키보드 크기가 작음으로 인하여 키의 갯수가 적은 경우

Alt키와 한/영 키를 함께 사용하는 경우가 존재한다


그런 노트북의 경우 OS설치 후, 한/영키가 아예 동작하지 않는 문제가 발생하고, 

다음 파일을 사용하여 레지스트리에 등록하면 그런 문제를 해결할 수 있다.


ALT 한글 전환.reg


Shift Space 한글 전환.reg



'Computer Programming > Tip' 카테고리의 다른 글

[Tip] TortoiseGit blame 라인 이동 단축키  (0) 2020.06.04
[MAC] 마우스 휠 스크롤 방향  (0) 2016.09.06
Posted by 은돌군
2013. 10. 23. 10:05

* 폴더 전체를 다른 폴더로 복사하기

cp -r 원본폴더 사본폴더

# 예시
cp -r /home/a /home/b

* 폴더 전체를 다른 폴더로 이동하기

mv 원본폴더 목적지폴더

# 예시
mv /home/a /home/c


* 폴더 전체를 삭제하기

rm -rf 폴더

# 예시
rm -rf /home/b


Posted by 은돌군
2013. 10. 15. 10:49


openssl-0.9.8k.tar.gz


# 다운 받는 경로 

http://www.openssl.org/source/


# Windows 상에서 OpenSSL Library 사용을 위해 필요한 OpenSSL 파일 -> 수많은 OpenSSL 파일들이 존재..

Posted by 은돌군
2013. 10. 10. 16:37

하면됨..


DWORD CMapInstallerDlg::getFileLengthFromHttp(CString url)

{

DWORD filesize;

TCHAR szCause[255];

CString CauseOfError;

TRY 

{

CInternetSession session;

CHttpFile *remotefile = (CHttpFile*)session.OpenURL(url,1,INTERNET_FLAG_TRANSFER_BINARY);

TCHAR szContentLength[32];

DWORD dwInfoSize = 32;

DWORD dwFileSize = 0;

BOOL bGetFileSize = FALSE;

if(remotefile->QueryInfo(HTTP_QUERY_CONTENT_LENGTH, szContentLength, &dwInfoSize, NULL))

{

bGetFileSize = TRUE;

dwFileSize = (DWORD)_ttol(szContentLength)

filesize = dwFileSize;

}

else

{ // file nothing

filesize = -1;

}

remotefile->Close();

session.Close();

delete remotefile;

delete session;

}

CATCH_ALL(error)

{

AfxMessageBox("Error when find Data from Server");

error->GetErrorMessage(szCause,254,NULL);

CauseOfError.Format("%s",szCause);

AfxMessageBox(CauseOfError);

}

END_CATCH_ALL;

Posted by 은돌군
2013. 10. 10. 15:51

winninie.h include 후,

아래 코드 사용 하면됨 ㅎ


int getFileFromHttp(char* pszUrl, char* pszFile)

{

HINTERNET    hInet, hUrl;

DWORD        dwReadSize = 0;


// WinINet함수 초기화

if ((hInet = InternetOpen("MyWeb",            // user agent in the HTTP protocol

INTERNET_OPEN_TYPE_DIRECT,    // AccessType

NULL,                        // ProxyName

NULL,                        // ProxyBypass

0)) != NULL)                // Options

{

// 입력된 HTTP주소를 열기

if ((hUrl = InternetOpenUrl(hInet,        // 인터넷 세션의 핸들

pszUrl,                        // URL

NULL,                        // HTTP server에 보내는 해더

0,                            // 해더 사이즈

0,                            // Flag

0)) != NULL)                // Context

{

FILE    *fp;


// 다운로드할 파일 만들기

if ((fp = fopen(pszFile, "wb")) != NULL)

{

TCHAR    szBuff[READ_BUF_SIZE];

DWORD    dwSize;

DWORD    dwDebug = 10;


do {

InternetReadFile(hUrl, szBuff, READ_BUF_SIZE, &dwSize);

fwrite(szBuff, dwSize, 1, fp);


dwReadSize++;


if(dwReadSize % 100 == 0)

printf("[%d]\n", dwReadSize);

size_t szFullSize = 766400;

UPDATE("Downloading...", (int)dwReadSize, 766400, true);

} while ((dwSize != 0) || (--dwDebug != 0));


fclose( fp );

}

InternetCloseHandle(hUrl);

}

InternetCloseHandle(hInet);

}

return(dwReadSize);

}



Posted by 은돌군
2013. 9. 23. 12:28

Android의 BroadCast 기능이 필요했다.

Sample 기능의 구현은 인터넷에 널리고 널렸기에 간단히 구현이 가능했지만

Sample 어플에서 잘 동작하던것이 기존에 개발하던 어플에 이식하믄 동작하지 않고 죽어버린다..

멘붕...


권한 문제가 아닐까 해서 아래방법을 테스트중...

 - Android BroadCast Permission 관련글

http://kyleslab.tistory.com/47


그래도 죽는다..ㅡㅡ;;


해결!! 요래요래.. 이유는.. 핸들러 쪽 문제가 아닐까?... 추측만;;;








'Computer Programming > Android' 카테고리의 다른 글

[Android] 안드로이드 스트링 비교  (0) 2015.09.24
[Android]InApp Billing - 3  (0) 2013.08.08
[Android]InApp Billing - 2  (0) 2013.08.08
[Android]InApp Billing - 1  (0) 2013.08.07
Posted by 은돌군