웹마스터 팁

^.^ 언제나 재밌는 소스만 들고오는 아이쿠입니다.
이번에도 역시 늘그렇듯이 서버에 부담을 주는 소스 입니다.

그림파일을 DB에 넣는 방법입니다.
그림파일을 Base64방식으로 엔코딩후 DB에 저장 불러올때는 디코딩해서 보여줍니다. ^^;

MySQL 기준입니다. ^^;

DB에 테이블을 일단 만들어야 겠지요.? ^^;
---------------------------------------------------------------------------
CREATE TABLE upfile (
  aduid mediumint(9) unsigned DEFAULT '0' NOT NULL auto_increment,
  comment text NOT NULL,
  PRIMARY KEY (aduid)
  );
---------------------------------------------------------------------------

upload.php 그림을 DB에 저장하는 소스입니다.
---------------------------------------------------------------------------
<?PHP
$size = filesize("이미지화일이름");   // 이미지 화일의 크기를 구합니다.
$fp = fopen("이미지화일이름","r");
$haha = fread($fp,$size); // 이미지화일 포인터($fp)를 이미지크기($size) 만큼 읽습니다
fclose($fp);

$end = base64_encode("$haha"); // $haha를 base64 형식으로 변환(엔코딩)합니다
$dbconn = mysql_connect("localhost","사용자아이디","사용자비밀번호") || die("데이터베이스 연결에 실패하였습니다.");  // 데이타베이스에 연결합니다.
$status = mysql_select_db("db_name");

$query = "INSERT INTO upfile (comment) VALUES ('$end')";  // $end를 테이블에 넣습니다.
$result = mysql_query($query);
echo("완료");
?>
----------------------------------------------------------------------------------------------------
그럼 저장이 완료 됩니다. 물론 실행시키실때마나 DB에 추가됩니다.


Load.php  그림을 DB에서 불러오는 소스입니다.
----------------------------------------------------------------------------------------------------
<?PHP
$dbconn = mysql_connect("localhost","ibuser","ibpass") || die("데이터베이스 연결에 실패하였습니다.");
$status = mysql_select_db("db_name");
// 데이타베이스에 연결합니다.

$query = "SELECT comment FROM upfile WHERE aduid = 1";  // 테이블에서 aduid필드가 1인 comment를 선택합니다. ^^; 저장데이터가 여러개라면 당연히 숫자만 적당히 조절 선택하여 불러올수 있습니다.

$result = mysql_query($query);
$row = mysql_fetch_row($result);
$my_name = $row[0];

$end = base64_decode("$my_name");  // $haha를 base64 형식으로 만든 텍스트를 복원(디코딩)합니다
echo("$end");  //
?>
----------------------------------------------------------------------------------------------------
^.^ 속도도 괜찮고 쓸만한것 같습니다. 다만 DB에 조금 무리를 줄꺼 같네요.. ^^;
용량이라도 큰 그림을 집어 넣고 불러올려면.. 그만큼 DB를 붙잡고 있어야 하니.. ^^;

그럼 이만 줄입니다. ^^;
제목 글쓴이 날짜
여러분이 원하시던 로또복권 소스공개~ [12] Dopesoul 2003.02.22
NZEO 이메일 인증 따라하기 [또 수정 --;] [44] file teslaMINT 2003.02.22
계정이 php를 지원하는지아닌지 잘 모를때... [16] 격투왕맹호 2003.02.19
유용한 함수 몇가지...;;;; [7] Yuki-H. 2003.02.19
PHP,자바스크립트 제 3탄! 아래에 헤더로 asx감추기를 이용한 PHP무비 플레이어! file ☆좀비파우더™ 2003.02.16
DB를 이용한 현재접속자 수 구하기 [6] 김현석 2003.02.14
[초간단] 헤더로 asx 파일 음악 주소를 숨겨봐요. [9] 모라미 2003.02.14
제로보드 스킨들이 어느 게시판에 쓰이는지 알아보는 소스 [12] teslaMINT 2003.02.11
V3 neo+ 항상 최신버전으로 자동링크시키기 [7] 김현석 2003.02.08
자신의 디비내용을 출력해주는 소스 [출처: phpschool.com] [5] 석이™ 2003.02.05
제로보드식 에러페이지 만들기 [2] .zeve 2003.02.04
야구 자료실 2 (목록 만들기) 한꼬마 2003.02.02
야구 자료실 만들기 1 [8] file 한꼬마 2003.01.30
PHP,자바스크립트 활용하기 #1 -무단링크라는 것은... [21] ☆좀비파우더™ 2003.01.30
^.^ 그림을 DB에 집어넣어 버리기.. [13] 아이쿠 2003.01.30
lotto 번호 추출기 [7] 갑빠™ 2003.01.29
제로보드 코멘트 수정 기능 구현!! [13] teslaMINT 2003.01.28
NZEO 쪽지 수신 허용/거부 따라하기 ~(=ㅁ=)~ [12] teslaMINT 2003.01.28
[제로카운터 수정하기#4-초보용] 인트로에서 카운트 체크하고 메인에서 카운트 보여주기 [3] 김태훈 2003.01.22
[제로카운터 수정하기#3-초보용] 어제 오늘 방문자수 변경하기 김태훈 2003.01.22