Преобразовать тег img в тег a для работы с лайтбоксом

Поэтому я пытаюсь использовать плагин LightBox. Однако я запрашиваю мою базу данных mysql и отображаю ее с тегом img. Но мне кажется, что LightBox требует тег "a". Кто-нибудь знает, как это сделать?

echo '<img id="database" src="data:image/jpeg;base64,'. base64_encode($image) .'" />';

Я пытался:

echo '<a id="database" href="data:image/jpeg;base64,'. base64_encode($image) .'" />';

но ничего не появляется, если я делаю это. В противном случае, используя тег img, все отображается нормально.

Дополнительная информация: Если это поможет, я храню изображения в виде BLOB-объектов в базе данных MySQL.
Спасибо

Обновление 1:

echo '<a href="data:image/jpeg;base64,'. base64_encode($image) .'"  data-lightbox="roadtrip"> <img id="database" src="data:image/jpeg;base64,'. base64_encode($image) .'" /><a/>'; 

Это изображение теперь связано с самим собой, что здорово! Но все еще не подходит для функциональности Lightbox. Как настроить лайтбокс в соответствии с инструкциями:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<script src="/var/www/html/jquery-1.11.3.min.js"> </script>


<title>Greeting Cards</title>

<link rel="stylesheet" href="/var/www/lightbox2-master/dist/css/lightbox.css">

</head>

<body>

<!--------Logo------------>
<div id="logo">
<a href="../../index.html" >
<img src="../../icon/icon.png" alt="Our logo picture" >
</a>
</div>
<!------------------------>

<h2>Greeting Cards</h2>

 <!-------->
<?php
 /* Getting the blobs from mysql database */

echo '<div id ="gallery">';

foreach ($images as $image) {
  $image = WideImage::loadFromString($image)->resize(300, 300); //image resizing here

  echo '<a href="data:image/jpeg;base64,'. base64_encode($image) .'"  data-lightbox="roadtrip"> <img id="database" src="data:image/jpeg;base64,'. base64_encode($image) .'" /><a/>'; 
}
echo '</div>';

mysqli_close($con);

?>

<script src="/var/www/lightbox2-master/dist/js/lightbox.js"> </script>

</body>
</html>

2 ответа

echo '<a href=""#><img id="database" src="data:image/jpeg;base64,'. base64_encode($image) .'" /><a/>'; Кредит Майку Филсу.

Это сработало! И не забудьте правильно связать все ваши файлы плагинов! Надеюсь, это кому-нибудь поможет.

Lightbox не поддерживает base64-строки в теге href. В этой теме есть несколько предложений по использованию data-remote: лайтбокс с тэгами или ;

Помимо этого есть и другие альтернативы, такие как Fancybox, это можно найти здесь: http://fancybox.net/

Другие вопросы по тегам