2016-11-12 8 views
0

Это часть моего кода из index.php:Как вызвать php в теге img src?

<div class="row"> 
<?php 
    $conn = mysql_connect("localhost","root",""); 
    mysql_select_db("imdb_db"); 
    $res = mysql_query("select * from `film` ORDER BY ID DESC"); 
    while($row = mysql_fetch_array($res)) { 
     ?><div class='col-xs-2'><?php 
     ?><p style="position:relative;left:-40px"><?php echo $row["Cim"];?></p><?php 
     ?> <img src="php/imageView.php?ID=<?php echo $row["ID"];?>" class="img-responsive" style="width:200px;height:250px;" alt="Image"> <?php 
     ?></div><?php 
    } 
    mysql_close($conn); 
?> 
</div> 

Это imageView.php:

<?php 
    $conn = mysql_connect("localhost","root",""); 
    mysql_select_db("imdb_db") or die(mysql_error()); 
    if(isset($_GET['ID'])) { 
     $sql = "SELECT `Boritokep` FROM `film` WHERE ID=". $_GET['ID']; 
     $result = mysql_query("$sql") or die("<b>Error:</b> Problem on Retrieving Image BLOB<br/>" . mysql_error()); 
     $row = mysql_fetch_array($result); 
     echo $row["Boritokep"]; 
    } 

    mysql_close($conn); 
?> 

И это результат:

enter image description here

С php/imageView.php?ID=<?php echo $row["ID"] Я прохожу путь к файлу:

uploads/film/pic/5.jpg 

Почему изображение не отображается?

+2

а) почему * любой * вы открыть PHP-теги и закройте его, ничего не делая между ними? b) ваш код уязвим для SQL-инъекции. просто представьте, что кто-то просил идентификатор '1; DROP TABLE film' c) не использовать' mysql', он устарел и в PHP7 удаляется, вместо этого используйте 'mysqli' или' pdo'. –

ответ

2

Почему изображение не отображается?

Потому что php/imageView.php?ID=<?php echo $row["ID"];?> возвращает путь изображения и не возвращает изображение самостоятельно.

imageView.php может принять этот путь и перенаправить агента пользователя к нему:

header(sprintf('Location: %s', $row["Boritokep"])); 

 Смежные вопросы

  • Нет связанных вопросов^_^