Как получить следующее изображение, хранящееся в базе данных в php - PullRequest
0 голосов
/ 09 декабря 2011

Я инициализировал переменную с именем допустим, скажем a = 0;когда пользователь нажимает кнопку для следующего изображения, значение a увеличивается на единицу, и мне нужно вызвать изображение с идентификатором значения «a».

Будет ли лучший способ сделать это, чтобызапускать запрос каждый раз, когда нажимается кнопка, или, точнее, сохранять все изображения в массиве и вызывать «а-тое» значение массива при клике?

*

Ответы [ 2 ]

0 голосов
/ 10 декабря 2011

Есть минусы в обеих ситуациях.

  1. , если вы загружаете все изображения и сохраняете в массиве, то для загрузки 1-го изображения может потребоваться некоторое время, и пользователь может даже не заинтересоваться переходом к остальным.

  2. если вы загрузите, когда они нажимают кнопку «Далее», это может занять некоторое время для каждой загрузки изображения.

при загрузке изображений

    $filename = "";

            if(!empty($_FILES["file"]))
            {
                if ((($_FILES["file"]["type"] == "image/gif")
                    || ($_FILES["file"]["type"] == "image/jpeg")
                    || ($_FILES["file"]["type"] == "image/pjpeg")))
                {
                    if ($_FILES["file"]["error"] > 0)
                        echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
                    else
                    {
                        $filename = $_FILES["file"]["name"];
                        if (file_exists("../img/noticias/" . $_FILES["file"]["name"]))
                            echo "Image " .$_FILES["file"]["name"] . " exists.";
                        else
                        {
                            move_uploaded_file($_FILES["file"]["tmp_name"],
                            "your server path" .  $_FILES["file"]["name"]);

                        }
                    }
                }
            }

затем сохраните $ filename в вашей таблице Посмотреть их в галерее

    while($row = $db->fetch_array($query)){  
        echo '<img src="path/to/images/' . $row['filename'] . '" width="219" height="117" />';

    }  

и используя что-то вроде лайтбокса, вы можете использовать jquery, чтобы сделать всплывающее окно для просмотра большего размера или добавить гиперссылку на каждое изображение, чтобы они могли просматривать на отдельной странице полноразмерное изображение.

0 голосов
/ 09 декабря 2011

Вы можете использовать обычный SQL, например, в MySQL

SELECT * FROM images WHERE [here your where-clause] LIMIT 1 OFFSET $a;

Как примечание: не сохраняйте все изображение в базе данных, а только путь к нему.

...