반응형
오늘 작업을 하던중.
어쩔수 없이 팝업창에서 부모창(opener)으로 post방식으로 파라메타값들을 넘겨야됬다.. 우씨..
파라메타값이 외부적요인으로 늘어났기때문이다..

IE6, 7 에서 GET방식으로 넘기는 최대 URL길이는 2083character를 보낼수있는데.. 이것을 넘게 되어서.. 어쩔수 없는 선택이였다.. 
ps. 브라우저마다 GET방식으로 넘길수 있는 최대 URL길이가 틀리다.

그래서 선택의 여지가 없었다.. 자.. 그러면 팝업에서 부모창으로 post방식으로 파라메타값을 넘기는 방법은 의외로 간단하다.

//팝업창
var frm = document.form;
var url = "test.html";  //본인이 보내야되는 url을 쓴다.
frm.meta_info.value = "XXXXX"; //파라메타값을 셋팅을 한다.
frm.action = url;
frm.method = "post";
frm.target = opener.window.name;  //name는 변경하지 말고 그대로 사용. 부모창의 이름을 타겟으로 하겠다고 선언하는 것임.

frm.submit();
self.close();

//부모창(opener)
window.name = 'xxx';  //아무렇게나 넣어두 된다. 부모창에 기본적으로 이름이 없기에 이름을 주는것.

이렇게만 javascript에 넣으면은 된다.
당연히 function으로 만들어서 사용을 해야된다..

반응형
반응형
var today = new Date();
document.write(today.getYear(), '<br />');

- IE, 오페라 는: 2010 이라 나온다.
- 파폭,크롬,사파리 는: 109 이라 나온다.

죄길 금액계산하다가 크롬으로 테스트가 해주다 발견하게 되었다.
그러던중.. 찾은것은 getFullYear()이라는 함수다.
모든 브라우저에서 동일하게 결과를 보여준다 해서 저것으로 교체를 했다..
잊지 말자  getFullYear()

반응형
반응형

일을 하다가. 팝업을 띄우는데 팝업브라우저의 X버튼을 막으라고 해서..
여러군대를 찾다가..
예전 소스에 본인이 만들어 놓은곳에서 찾게 되었다.. ㅠㅠ


<script language=JavaScript>
function moveCheckYn()
{
event.returnValue = "창을 닫으시겠습니까?";
}
</script>


<body onbeforeunload="moveCheckYn();">

이렇게 하면 경고창을 띄우면서 진행여부를 묻는다..

반응형
반응형

아.. 날짜를 계산하던중.. 

몇일후.. 이부분을 처리를 못해서.. 눈물을 흘렸다.. ㅋ(5분간 미친듯이 찾았다. 급해서)
헌데.. 의외의 곳에서 발견을 해버렸당.. ㅋㅋ

$now_ymd = date('Y.m.d');
$end_ymd1 = date("Y.m.d", strtotime(date("Y-m-d")." +7 days"));
$end_ymd2 = date("Y.m.d", strtotime(date("Y-m-d")." +2 month"));
매달 1일이나 특정 날짜로 하고 싶다면..
ex) 20일로 date("Y.m.d", strtotime(date("Y-m-20")." +2 month"));

이렇게 하면은 날짜들이 계산이 된다.

$now_ymd = 2010.11.11
$end_ymd1 = 2010.11.18
$end_ymd2 = 2011.01.11
이렇게 출력이 된다. ㅋ

즐거운 발견이다.. 

반응형
반응형

window.open() 이거 가끔 사용을 하는데 오늘 회사에서 작업을 하다가 하게 되었다..
그런데 이거 왠걸... 옵션의 속성들을 다 까먹었다.. 부랴 부랴 인터넷에서 찾다가.. 내 블로그 있는데.
하면서 아래와 같이 작성을 한다. ㅎㅎ

사용법 : window.open("새창 페이지 주소(URL)", "새창이름", "옵션");
ex)
<script type="text/javascript">
function open_popup()
{
window.open('http://www.soulroad.net','SR','menubar=no,toolbar=no,location=no,status=no,scrollbars=no,width=520px,height=564px,left=0px,top=0px');
}
</script>

옵션 속성
menubar=no //메뉴바 X
toolbar=no // 툴바 X
location=no //주소표시줄 X
status=no //상태표시줄 X
scrollbars=no //스크롤바 X
fullscreen //최대창크기로 열기(최대화)
width //가로크기(px)
height //세로크기(px)
top //위에서부터 위치(px)
left //왼쪽에서부터 위치(px)
(px)되도록이면 써둘것.
반응형
반응형
php 파일업로드

오늘은 php 파일업로드에 관해서 쓰려한다.
사실 본인이.. 가끔 만들때 깜빡깜빡해서 참고하려는 자료이다. ㅎㅎ

자.. 일단 첫 html에서 확인해야될 사항.
form 속성에 enctype="multipart/form-data" <-- 이것이다. 이거 빼먹으면 오류난다.
<form name='frm1' method='post' enctype="multipart/form-data" action='xxx.php'>
잊지 말자.
그리고 다중 업로드와 단일 업로드가 있지만.스크립트로 만들어주면 그리 크게 힘들지는 않을것이다.(사실 스크립트가 더 어려운거 같다.. ㅠ_ㅠ)
나중에 스크립트는 따로 올리겠다..

자.. 이제 우리에게 가장 익숙한 html 테그이다.
input 태크 type='file' 를 하면 다른 사이트에서 업로드 할때 보이던것과 매우 흡사하다. ㅋ(아닐수도 있구요.. 방법이 워낙많아서..)
일단 기본으로 가는것이 가장 하기 편하겠다.
<input name='f_0' type='file'> 보기 않좋아도 어쩔수 없다.. ㅠㅠ 그리고 크기는 style속성으로 줄수 있다. ex) style='width:300px;'

이렇게 입력을 하고 php로 넘어가겠다.(솔찍히 너무 잡다한 말을 쓰네요.. -_-;;)

php에서 넘겨준 f_0값을 받자.
$f_0 <-- 이렇게만 해도 받는다.
일단 파일이 들어온 유무를 확인하자.
if ($f_0!=""){}
위와같이 하면 f_0값이 null이 아니면 if구문 안에 있는 구문을 실행을 할것이다.
자 그리고 우리가 해야될것은 php에 있는 함수로 확인을 하는 작업이다. 다들 알고 있는 함수일것이다.
is_uploaded_file($f_0) 이렇게하면 파일이 HTTP POST를 통해 업로드 된것인지 아닌지 알려줍니다. 사실인경우 TRUE 그리고 파일의 존제유무. file_exists()로 동일한 명의 파일이 있는지 확인후 있다면 현제 파일의 파일명을 변경시켜줍니다.

그리고 파일의 명과 사이즈가져오는것을 잊었네요.
$userfile_name=$_FILES['f_0']['name'];
$userfile_size=$_FILES['f_0']['size'];

이렇게 하면 파일명과 사이즈를 가져올수 있습니다.
그리고 중간은 과감히 빼겠습니다.

move_uploaded_file() 이녀석이 이제 파일을 실제로 디스크에 써주는 녀석입니다. move_uploaded_file($f_0,'경로포함된 파일명') 이렇게 해주면 파일이 업로드가 됩니다.
되도록이면 보여주는것이 좋으니 if(!move_uploaded_file()){} 해주는것이 좋겠지요.


ex)
php_upload.html
<html>
<body>
<form name='frm1' method='post' enctype="multipart/form-data" action='php_upload.php'>
<input name='f_0' type='file'>
</form>
</body>
</html>

php_upload.php
//파일업로드
if($f_0!=""){
  if(is_uploaded_file($f_0)){
    if($Files[0]!=""){
     if(file_exists("경로".$Files[0])) {
        @unlink("경로".$Files[0]);// 여기서는 귀찮아서 지움.
      }  
    }
   $userfile_name=$_FILES['f_0']['name'];
   $userfile_size=$_FILES['f_0']['size'];

   $maxsize=3*1024*1024;//3MB 용량 제한

    if($userfile_size>=$maxsize){
      echo "<script>alert('파일용량이 초과되었습니다.'); history.back(-1);</script>"; 
      exit;
    }
    $upfile =explode(".",$userfile_name);
    $fname=str_replace('/','',$upfile[0]);
    $file_name=$fname."_".$number.".".$upfile[1];

    if (!move_uploaded_file($f_0,"경로/$file_name" )) {
      echo("<script>alert('파일업로드를 실패하였습니다');history.go(-1);</script>");
      exit;
    }
} else {
    echo "<script>alert('정상적인 업로드 방식이 아닙니다');history.go(-1);</script>";
    exit; 
 }
반응형
반응형

음.. 소수점을 남기고 계산하는것이 아니라. 소수점 이하 올림 반올림 내림 3가지 함수를 설명해놓을것이다.

1. ceil() - 소수점 이하 올림

2. round() - 소수점 이하 반올림

3. floor() - 소수점 이하 내림

이렇게 3개의 함수가 있다.

ex)

$crf1 = 12.0001;
$crf2 = 12.4999;
$crf3 = 12.5999;
$crf4 = 12.9001;

ceil($crf1); -> 13 이된다.
round($crf2); -> 12가 된다.
round($crf3); -> 13가 된다.
floor($crf4); -> 12가 된다.

위에 보는바와 같이 올림일경우 소수점에 값이 있을경우 무조건 값을 올리고, 내림일경우 소수점 이하 삭제를 한다.
그리고 반올림일경우는 소수점 이하 한자리만 가지고 판단을 한다. 이점을 유념해야겠다.

반응형

'프로그래밍 > PHP' 카테고리의 다른 글

[PHP] date()함수 날짜 계산  (0) 2010.11.11
[PHP] 파일업로드  (0) 2010.08.27
[PHP] 문자를 특정 위치로 부터 일정 길이까지 자르기. substr()  (0) 2010.08.06
PHP 문자열 자르기  (0) 2010.07.12
문자 자르기.  (0) 2010.07.12
반응형

버전별로 한번 올려보려한다.

5.5와 6.0을..

비록 사이트에 가면은 받을수 있는 것이지만.. 아무래도 한국에 있는 서버만 하겠느냐. 하는 마음에서 올려 봅니다. 

반응형

'프로그래밍 > 자료실' 카테고리의 다른 글

스마트에디터  (0) 2017.11.23
[컴퓨터사양확인] CPU-Z  (0) 2014.05.30
[자료실] Youtube downroader  (0) 2011.09.29
반응형

PHP에 substr() 이라는 함수가 있다.

이녀석을 사용해서 어떠한 식으로 뽑히는지 아래 예제를 보도록 하자.

$test='12345678';

$tview = substr($test,0,3);

echo " tview = ".$tview;

위와같이 할경우 1부터 3개 즉 123이찍히게 됩니다.

즉 test의 값 '12345678'의 위치값은 0~7 입니다.

만약 78만 보이게하고 싶다하시면.

substr($test,6,2); 이렇게 입력을 하시면 됩니다.

반응형

'프로그래밍 > PHP' 카테고리의 다른 글

[PHP] date()함수 날짜 계산  (0) 2010.11.11
[PHP] 파일업로드  (0) 2010.08.27
[PHP] 소수점 계산  (0) 2010.08.12
PHP 문자열 자르기  (0) 2010.07.12
문자 자르기.  (0) 2010.07.12
반응형

가끔.. 아니 자주. 이클립스를 설치를 하고 실행을 하면 오류가 난다.

1. JDK를 설치를 안해서.. 이클립스는 JDK를 설치를 먼저 해놔야 실행이 된다.

2. JDK를 먼저 설치를 했는데도 불구하고 오류가 나는 경우.

eclipse 폴더를 보면. eclipse.ini 파일이 있다. 이것을 메모장으로 연후.

-vm
C:\Program Files\Java\jdk1.5.0_19\bin\javaw.exe

위와 같이 JDK경로를 넣어주면 된다.

예전에 이것을 몰라 정말 힘들었다.

반응형

'프로그래밍 > JAVA' 카테고리의 다른 글

JAVA 이클립스 override and update / commit  (0) 2010.08.05
JAVA 설치 및 환경설정 하기.  (0) 2010.08.04
JAVA 소수점 반올림  (0) 2010.07.07
JAVA 형변환  (0) 2010.07.07

+ Recent posts