выборка нескольких изображений из базы данных mysql - PullRequest
0 голосов
/ 18 апреля 2020

Я пытался вставить несколько изображений в базу данных mysql. После использования приведенного ниже кода он был вставлен в базу данных вместе с другими полями в виде массива. Но теперь я не могу получить массив для отображения изображений.

if(isset($_POST['submit'])){
$title = $_POST['title'];

$description = $_POST['description'];

$price = $_POST['price'];
$days = $_POST['days'];
$nights = $_POST['nights'];
$people = $_POST['people'];
$hotel_rating = $_POST['hotel_rating'];
$images_name = $_FILES['images']['name'];
$images_type = $_FILES['images']['type'];
$images_size = $_FILES['images']['size'];
$images_tmp = $_FILES['images']['tmp_name'];
$inclusion = $_POST['inclusion'];
$exclusion = $_POST['exclusion'];
$date = date('d/m/y');
$category = $_POST['category'];


if($title == '' or $category == '' or $description == '' or $price == '' or $days == '' or $nights =='' or $people =='' or $hotel_rating==''
or $images_name == '' or $inclusion =='' or $exclusion== ''){
    echo "<script>alert('Please fill all fields!')</script>";
    exit();
}
    for($i = 0; $i< count($images_tmp)-1; $i++){
        if($images_type[$i] == "image/jpeg" or $images_type[$i] == "image/png" or $images_type[$i] == "image/gif"){
    if($images_size[$i] <= 150000 && $images_size[$i] >= 100000){
        move_uploaded_file($images_tmp[$i], "images1/".$images_name[$i]);
        }
    else {
        echo "<script>alert('Please upload image between 100kb and 150kb only.')</script>";
        exit();
    }
    }
else{
echo "<script>alert('Image type is invalid!')</script>";
exit();
}`

Я использую следующий код для извлечения изображений.

<img src = "<?php echo $images; ?>> 

Может ли кто-нибудь помочь мне, что я делаю неправильно ? Заранее спасибо. Ниже приведен код для инициализации переменной:

    if(!isset($_GET['cat'])){
$query = "select * from post order by 1 DESC LIMIT 0,4";
$run = mysqli_query($db, $query);
while($row = mysqli_fetch_array($run)){
    $post_id = $row['post_id'];
    $title = $row['post_title'];
    $description = substr($row['post_desc'], 0, 300);
    $price = $row['post_price'];
    $days = $row['post_days'];
    $nights = $row['post_nights'];
    $people = $row['post_people'];
    $hotel_rating = $row['post_hotel'];
    $images = array('images1/'.$row['post_images']);
    $inclusion = $row['post_include'];
    $exclusion = $row['post_ninclude'];
    $date = $row['post_date']; ?>       
    <!-- Item -->
    <div class="item clearfix rating_5">
    <div class="item_image"><img src = "<?php echo $images; ?>" width="500" height="400" style="width:100%; height:400px; object-fit: cover;" alt="Image cannot be displayed"></div>

Ответы [ 2 ]

0 голосов
/ 18 апреля 2020

Если переменная $images является массивом изображений, вам нужно сделать как минимум

<?php foreach ($images as $image): ?>
    <img src="<?= $image ?>">
<?php endforeach ?>

Но в вашем коде нет связи с базой данных, нет $images инициализации переменной, ничего. Так что только мы можем сделать, это угадать.

0 голосов
/ 18 апреля 2020

независимо от всего упомянутого кода, но в вашем теге img вы должны закрыть атрибут sr c.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...