Я делаю упражнение для своего класса веб-разработки, но я застрял. Вот проблема:
— У меня есть меню с множественным выбором. Когда пользователь выбирает «музыку», я хочу показать ему по три штуки, каждая из которых содержит изображение с CSS-фоном. Изображения должны храниться в массиве php.
То же самое должно произойти, когда пользователь выбирает «спорт» или «театр».
Проблема в том, что когда я пытаюсь показать изображения, хранящиеся в массиве, я вижу только письменную ссылку (например, «www.pexels.com»), а не само изображение.
Если кто-нибудь может мне помочь, это было бы очень признательно, спасибо!
Вот код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Devoir 1 de php</title>
</head>
<body>
<h1>Catégorie:</h1>
<?php
include "data.php";
if (isset($_POST['submit']))
{
switch($_POST["activite"])
{
case 'musique':
$image1 = $musique['imageMusique1'];
$image2 = $musique['imageMusique2'];
$image3 = $musique['imageMusique1'];
break;
case 'théâtre';
echo "théâtre";
break;
case 'sport':
echo "Sport";
break;
}
}
?>
<form method="post" action="">
<select name="activite" >
<option value="musique">Musique</option>
<option value="théâtre">Théâtre</option>
<option value="sport">Sport</option>
</select>
<input type="submit" value="voir photos" name="submit">
</form>
<div style = "background-image: url('<?php echo $image1 ?>')"></div>
<div style = "background-image: url(<?php echo $image2 ?>)"></div>
<div style = "background-image: url(<?php echo $image3 ?>)"></div>
</body>
</html>
У вашего div нет места для отображения изображения.
Как, например, установите ширину и высоту и попробуйте:
<div style = "background-image: url('<?php echo $image1 ?>'); width:100px;height:100px"></div>
Конечно, размер div должен соответствовать вашим ожиданиям.
В качестве альтернативы вы можете использовать <img />
вместо.
Других решений пока нет …