2010-06-26 13 views
0

데이터베이스에서 이미지를 표시하려고 할 때 이미지가 표시되지 않았습니다. 문제점을 알지 못했습니다. 내 코드는 다음과 같습니다.이미지를 표시 할 수 없습니다.

show_desc.php

<?php 
    $errmsg = ""; 

    if (! @mysql_connect("localhost","root","")) { 
    $errmsg = "Cannot connect to database"; 
    } 

    @mysql_select_db("dbname"); 

    if (isset($_GET['img_name'])) { 
    $gotten = @mysql_query("select img from image where img_id = ".$_GET['img_name']); 

    header("Content-type: image/x-ms-bmp"); 

    while ($row = mysql_fetch_array($gotten)) { 
     print $row['img']; 
    } 
    mysql_free_result($gotten); 
    } 
    ?> 

display.php

<?php 
    $errmsg = ""; 

    if (! @mysql_connect("localhost","root","")) { 
     $errmsg = "Cannot connect to database"; 
    } 

    @mysql_select_db("dbase_mgb"); 

    $strSQL = "select * from image"; 
    $rsPix = mysql_query($strSQL); 
    $numRows = mysql_numrows($rsPix); 

    $i = 0; 

    while($i < $numRows) { 
    ?> 

    <image src="show_desc.php?img_id=<?php echo mysql_result($rsPix,$i,"img_id"); ?>" 

    <?php 

    $i++; 

    } 
    ?> 

사람이 좀 도와 주실 래요?

답변

1
  1. 귀하의 display.php 적절한 <img> 태그를 생산하지 않는 것 같습니다. 데이터베이스에 IMG 필드 BINARY
+0

BLOB과 같은 이미지 데이터 형식을 사용, 그것은 즉시 동안 상태 후, 이미지가 데이터베이스에있는 IMG 필드가 표시되는 경우에도 표시되지 않습니다이다 as BINARY – Shruti

0

왜 당신이 데이터베이스에 강한 이미지 그대로 표시되어 있는지

  • 확인? 단순히 이미지 이름/경로를 데이터베이스에 저장하고 폴더에 업로드 한 다음 <img> 태그에서 이름을 검색하는 동안 표시하는 것이 좋습니다.

  • +0

    이것은 mysqldump에 잡히지 않고 연결 해제/참조 무결성 부족의 큰 위험이 있음을 의미합니다. –

    +0

    그걸 어떻게 수행하는지 말해 주시겠습니까 ... 감사합니다. – Shruti

    +0

    @Shruti :이 스레드를보세요. plz : http://stackoverflow.com/questions/450876/upload-image-to-server-using-php-store-file-name-in-a-mysql-database-with-other – Sarfraz

    1

    난 것은이 포럼이 나 이미지 태그를 넣어 허용하지 않습니다

    관련 문제