2011-12-23 3 views
0

PHP로 이미지를 설정 한 이미지가있는 sql에서 하나의 테이블을 만든 다음이 테이블을 html로 가져 오려고합니다.이미지가있는 SQL 테이블 만들기

누군가가 어떻게 작동하는지 알고 있습니까? 또는 누군가 온라인에서 예를 보았습니까?

도와주세요. 고마워. 여기

+0

참고 : MySQL이 데이터베이스에 이진 데이터와 큰 수행하지 않습니다 단순히 파일로 이미지를 저장 ....하지 마 – RageZ

+3

를 저장 기반의 파일 시스템을 비교하고있는 디렉토리/파일 이름을 저장하여 데이터베이스 –

+0

당신의 도움에 감사드립니다; 정확하게 이해했는지 확인하기 위해 예를 들어 colume을 생성해야합니다. 이미지와 데이터는 img/image1.jpg와 같은 파일의 경로가됩니다. 이거? –

답변

0

좋아 BLOB 열에서의 좋아하는 것입니다 , 귀하의 웹 애플 리케이션을 통해 PHP를 사용하고, 다시 당신의 웹 애플 리케이션 (HTML 페이지)에서 테이블에서 동일한 이미지를 표시하고 싶습니다.

나는 "photo_table"라고, 샘플 테이블을 작성 간단한 PHP 5.3

를 사용하여 MySQL 용의 예를 보여줍니다

: 이제

CREATE TABLE photo_table (photo_name_col VARCHAR(30),photo_img_col LONGBLOB); 

당신의 PHP 페이지는 다음을 사용하여 이미지 파일을 업로드 HTML 코드에서 : 양식 "photoForm"가 제출되면

<form name="photoForm" method="post" ENCTYPE="multipart/form-data" action="../insertImage.php" > 
     <input type="text" name="uploadFileName"> 
     <!--commenting as I was not able to publish this note<input type="file" name="uploadFile" />--> 
     <!--Some other input fields if you want--> 
     <input type="submit" value="Submit"/> 
</form> 

이제, 양식 값이 전달됩니다 우리는 다음 코드를해야합니다 "insertImage.php"에 우리의 MySQL DB의 테이블에 사진 및 이름을 업로드 :

<?php 
    $con=mysql_connect("ipAddressOfDB","username","password"); 
    if(!$con){ 
    die('Could not connect:'.mysql_error()); 
    } 
    mysql_select_db("db_name",$con); 
    $image = $_FILES['uploadfile']['tmp_name']; 
    $imageName = $_POST['uploadFileName']; 
    $fp = fopen($image, 'r'); 
    $content = fread($fp, filesize($image)); 
    $content = addslashes($content); 
    fclose($fp); 
    $sql="insert into photo_table values('$imageName','$content')"; 
    mysql_query($sql,$con); 
?> 

를 HTML 페이지에 테이블에서 사진을 표시하기 위해, 나는 다음과 같은 방법을 사용합니다. db에서 이미지를 가져 와서 서버의 임시 위치에 복사하십시오.

<?php 
    $con=mysql_connect("ipAddressOfDB","username","password"); 
    mysql_select_db("db_name",$con); 
    $sql="select * from photo_table where photo_name_col ='$uploadFileName'"; 
    $result=mysql_query($sql,$con); 
    if($row=mysql_fetch_array($result)){ 
     $fileName="generated/".$uploadFileName; 
     file_put_contents($fileName, $row['photo']); 
    } 
    echo "<img src='" . $fileName . "' />"; <!--this will display the image--> 
?> 
관련 문제