반응형
랜덤 서명에 괌심을 가져 주시는 분들이 많아서 소스를 공개합니다.

허접한 소스지만 이해해주세요~

현재 제가 사용하는 소스는 ASP버젼이지만 ASP버젼은 많은 분들이 사용하지 못하실것 같아서

PHP버젼을 따로 준비하였습니다.

소스는 의외로 간단합니다.


------------------ASP 버젼 ----------------------------------------
<%
Randomize
ran = Int((99999 - 1 + 1) * Rnd + 1)
ran = (ran mod 4)+1 '서명개수
file = "sin"& ran &".jpg"
'파일 이름을 만드는 부분입니다. 윈하시는 서명의 개수를 mod 4 이부분을 수정해주세요
'핸재 4개~~ 파일명은 sin1.jpg sin2.jpg .... 이런식으로 만들어주세요
'이미지 파일은 같은 폴더에 있으면 됩니다.

Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = 1
objStream.LoadFromFile Server.MapPath("./")&""& file
download = objStream.Read
Response.BinaryWrite download
Set objstream = nothing
'파일을 출력하는 부분
%>
---------------------------------------------------------------------
위부분을 파일로 만드신후 이미지 파일대신 서명에 넣으시면 됩니다.
이파일은 제대로 작동된다면 이미지 파일로 보입니다. 확장자랑은 상관없습니다.
ASP파일이므로 당연히 .asp겠지요~~~
이미지는 mod뒤에 정한 개수만큼 sin1.jpg sin2.jpg sin3.jpg sin4.jpg 로 같은 폴더에 만드시면 됩니다.
제대로 된다면 파일을 브라우저로 보시면 이미지가 보입니다.



--------------------PHP버젼-----------------------------------------
<?
$a = (rand() % 4)+1;
$file = "sin"."$a".".jpg"; //실제 파일명 또는 경로

// 파일 이름을 만드는 부분입니다. 윈하시는 서명의 개수를 % 4 이부분을 수정해주세요
// 핸재 4개~~ 파일명은 sin1.jpg sin2.jpg .... 이런식으로 만들어주세요
// 이미지 파일은 같은 폴더에 있으면 됩니다.

$fp = fopen("$file", "rb");
if (!fpassthru($fp))
fclose($fp);
else
echo "해당 파일이나 경로가 존재하지 않습니다.";

?>
---------------------------------------------------------------------
php버젼도 사용 방법은 asp버젼이랑 동일합니다.
파일로 만드신후 이미지 파일대신 서명에 넣으시면 됩니다.
PHP니까 당연히 파일명은 .php로 만드시면 됩니다.
이미지는 % 뒤에 정한 개수만큼 sin1.jpg sin2.jpg sin3.jpg sin4.jpg 로 같은 폴더에 만드시면 됩니다.
제대로 된다면 파일을 브라우저로 보시면 이미지가 보입니다.

[ 이 의견은 khunt님에 의해 수정되었습니다. (2003-07-04 01:18) ]

배경이미지 고정하기
 
홈페이지 내에서 배경이미지를 고정하는 방법에 대해서 간략하게 설명을 드릴려고 합니다. 우선 홈페이지에 넣은 배경이미지에는 크게 두부분이 있습니다. 바로 홈페이지 전체의 배경이미지와 각 부분(보통 테이블 내의 쉘에 해당)에 넣는 이미지가 있죠.

1. 홈페이지 전체에 대한 배경이미지 고정하기

크게 두가지 방법이 있습니다.

- 스타일 쉬트에 입력하여 배경이미지 고정하기

보통 홈페이지를 제작할 때 스타일 쉬트에 body 부분에 관한 것을 설정해 줍니다. 이 body 부분은 홈페이지 내의 <body>...</body> 내의 내용에 대한 공통된 설정을 할 때 이용되죠. 따라서 아래와 같이 여기에 직접적으로 배경이미지를 고정시키기 위한 내용을 입력하면 됩니다.

<style type='text/css'>
<!--
body {background:배경색 url(이미지경로) no-repeat fixed right bottom"
}
-->
</style>

마지막에 있는 right bottom 은 고정될 배경이미지의 위치를 설정하는 것입니다. 따라서 위의 말은 브라우저 상의 우측 하단에 url에 들어가 있는 이미지를 고정시켜서 보여 주어라는 의미가 되겠죠.

right bottom 에서 짐작하셨겠지만, 앞쪽에 고정될 이미지의 좌우위치가 들어 가며, 뒷쪽에는 상하위치가 들어갑니다. 따라서 앞쪽에 설정이 가능한 값은 left, center, right가 되고, 뒤쪽에 설정이 가능한 값은 top, middle, bottom 이 됩니다.

- 자바스크립트를 이용하여 고정하기

<body>...</body> 내에 아래의 자바스크립트를 입력해 주면, 홈페이지 전체의 배경이미지를 고정할 수 있습니다. 물론 설정값은 위와 동일합니다.

<script language="JavaScript1.2">
if (document.all)
document.body.style.cssText="background:배경색 url(이미지경로) no-repeat fixed right bottom"
</script>

2. 특정 영역(테이블 내의 쉘)에 배경이미지 고정하기

특정영역에 대한 배경이미지의 고정은 배경이미지를 고정시키고자 하는 부분에 대해서 스타일을 이용해서 입력해 주면 됩니다.

예를 들어 게시물 추출에서 좌측 게시물 추출과 우측 게시물 추출 부분에 대해서 서로 다른 배경이미지를 사용하며 이를 고정하고자 한다면... 아래와 같습니다.

<table border=0 cellpadding=0 cellspacing=0 width=100%>
<tr>
<td> 좌측 게시물 추출 형식</td>
<td>우측 게시물 추출 형식</td>
</tr>
</table>

이 경우 좌측 게시물 추출 부분에 배경이미지를 넣고 싶으면 보통...<td background="이미지 주소"> 좌측 게시물 추출 형식</td>식으로 입력하지만 이 경우에는 배경이미지가 고정이 아닌 타일형식으로 보이게 되죠. 따라서 배경이미지가 타일형식이 아닌 고정된 형식으로 보이게 하고 싶다면 스타일을 사용하여 다음과 같이 입력해 주면 됩니다.

<td style="background:배경색 url('배경이미지 주소') no-repeat fixed right bottom">

보시면 알겠지만, 형식은 홈페이지 전체 배경이미지를 고정시키는 것이나 특정 영역에 고정시키는 것이나 동일합니다.

이를 종합하면 아래와 같은 모양이 될 것입니다.

<table border=0 cellpadding=0 cellspacing=0 width=100%>
<tr>
<td style="background:배경색 url('좌측 배경이미지 주소') no-repeat fixed right bottom"> 좌측 게시물 추출 형식</td>
<td style="background:배경색 url('우측 배경이미지 주소') no-repeat fixed right bottom"> 우측 게시물 추출 형식</td>
</tr>
</table>

참고로 이는 게시물 추출 뿐만 아니라 테이블을 사용한 어느 곳이나 사용이 가능합니다.

▣ Tips

세팔보드나 기타 다른 보드를 이용해  원프레임으로 만든 홈페이지에서 게시판 부분에 배경이미지를 고정시키고 싶다면, 홈페이지 전체의 배경이미지 고정보다는 다음과 같은 방법으로 하는 것이 좋습니다.

해당 게시판의 관리자 화면에서 게시판 위쪽에 들어가는 html 문서 부분에.........

<table border=0 cellpadding=0 cellspacing=0 width=100%>
<tr>
<td style="background:배경색 url('게시판 배경이미지 주소') no-repeat fixed right bottom">

라고 입력을 하고....

게시판 하단에 들어가는 html 부분에.......

</td></tr></table>

라고 입력하여 테이블을 닫아 주는 것입니다. 그러면 현재의 테이블이 게시판 부분만 감싸기 때문에...... 게시판 부분에 대해서만 배경이미지의 고정이 이루어지겠죠.

p.s : 이 외에도 배경이미지를 고정시킬 수 있는 방법은 다양하지만, 위의 방법만으로도 얼마든지 응용이 가능하며, 또한 실제 사용상에도 별다른 무리가 없습니다.....^^;

반응형

'WebPrograming관련' 카테고리의 다른 글

PHP 용량제한설정  (0) 2008.03.18
OPML  (0) 2008.02.23
Flv파일(동영상) 링크하는 방법(flv 플레이어 다운로드)  (0) 2007.08.11
Posted by Real_G