X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Смена изображений с закрепленной ссылкой
kiki
kiki
Topic Starter сообщение 10.5.2015, 1:03; Ответить: kiki
Сообщение #1


Всем доброго времени суток!
Хочу сделать блок, в котором изображения будут меняться, загружаясь из определенной папки. К каждому изображению должна быть закреплена ссылка на соответствующую страничку. При этом изображения в эту папку загружаются методом POST, и в таблице каждому изображению присваивается определенная ссылка и id.
Внимание вопрос: Как будет выглядеть скрипт, который выгрузит этот массив из базы так, чтобы изображения менялись, при этом менялись и ссылки, соответствующие другим изображениям?


Вот наброски кода:

CODE
<?

include ("../manage/connect.php");

?>


<script type="text/javascript">



<?
$getslideurl = mysql_query("SELECT * FROM slideshow order by id") or die(mysql_error());
while($slideshow = mysql_fetch_array($getslideurl))
{

$slideurl = $slideshow['slideurl'];
$slideway = $slideshow['slideway'];

}

$images = $slideway;
$folder = 'slideshow/';
$array_to_js='var imgs=[';
$all_files = scandir($folder);
for ($i=2; $i<=sizeof($all_files)-1; $i++) {
$array_to_js.='"'.$folder.$all_files[$i].'",';
}
echo substr($array_to_js,0,-1).'];';
?>

var n=0;
var time=800;
play=setInterval("chgImg()", 7000);

function chgImg() {
$('#slide_show').fadeOut(time, function() {
$(this).attr('src', imgs[n]).fadeIn(time);
});

n++;
if (n>=imgs.length) n=0;
}
</script>





<?
$getslideurl = mysql_query("SELECT * FROM slideshow order by id") or die(mysql_error());
while($slideshow = mysql_fetch_array($getslideurl))
{

$slideurl = $slideshow['slideurl'];
$slideway = 'slideshow/'.$slideshow['slideway'];

}
?>
<div align="center" style="min-height:200px;">
<a href="<? echo $slideurl; ?>" id="slideurl"><img src="<? echo $slideway; ?>" alt="" id="slide_show"></a>
</div>


Сообщение отредактировал kiki - 10.5.2015, 1:15


--------------------
Куплю сайты с доходом!
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
x64
x64
сообщение 10.5.2015, 9:16; Ответить: x64
Сообщение #2


Цитата(kiki @ 10.5.2015, 0:03) *
изображения в эту папку загружаются методом POST

Разве это важно? Хоть по FTP или SSH.

1. дважды используется перебор всей таблицы:
Код
$getslideurl = mysql_query("SELECT * FROM slideshow order by id")


2. что ждёте от кода:
Код
while($slideshow = mysql_fetch_array($getslideurl)) {
    $slideurl = $slideshow['slideurl'];
    $slideway = $slideshow['slideway'];
}

? Этот момент непонятен совсем, т. е. вообще. Устраивается перебор всех картинок, на каждом шаге переменным $slideurl и $slideway присваивается очередное значение. Нетрудно догадаться, что на выходе они будут содержать данные из последней записи в таблице.

В данном контексте код абсолютно идентичен:
Код
$getslideurl = mysql_query("SELECT `slideurl`, `slideway` FROM slideshow ORDER BY id DESC") or die(mysql_error());
if ($slideshow = mysql_fetch_assoc($getslideurl)) {
    $slideurl = $slideshow['slideurl'];
    $slideway = $slideshow['slideway'];
}


На фоне этого ещё происходит создание js-списка imgs, в который добавляются файлы, сканированием директории. Для чего это делается, если
Цитата(kiki @ 10.5.2015, 0:03) *
в таблице каждому изображению присваивается определенная ссылка и id

Имя файла тоже добавляется? В таком случае отпадает нужность в сканировании папки с изображениями и можно сформировать список хешей, в виде:
Код
var imgs = [
    {name:'имя.файла', url:'ссылка'},
    {name:'имя.файла2', url:'ссылка2'},
    ...
];

и немножко подрихтовать функцию chgImg(): менять не только картинку, но и ссылку.


Вообще, данную задачу выгоднее решить с конца: сначала ручками сформировать js-список и заставить крутиться его, после чего программно (на PHP) произвести формирование похожего кода.

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Размещу статью с ссылкой на ваш ресурс
Донор: ИКС : 38000, Page Rank = 5.94 (xPR), Траст = 10
6 Курыкин 3141 5.11.2023, 2:55
автор: AndrePro
Открытая тема (нет новых ответов) Продается сайт фотосток ИИ изображений
Хороший вариант!
20 alexey 3274 25.6.2023, 15:28
автор: alexey
Открытая тема (нет новых ответов) Ukr Private Proxy 4g Lifecell, Kyivstar, Vodafone (ТЕСТ, смена по ссылке, ротация)
Продам Личные Украинские приватные мобильные прокси 4g Lifecell, Kyivs
1 Kostyaxxxx 4258 20.6.2021, 20:26
автор: Kostyaxxxx
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыКорректность показа вёрстки изображений на разных гаджетах
Не сохраняются пропорции изображений на смартфонах
1 master-vek 37254 25.3.2021, 13:22
автор: tedder
Открытая тема (нет новых ответов) Площадки для статей с анкорной ссылкой
Бесплатная база
26 Retyk 15184 10.5.2020, 14:11
автор: Retyk


 



RSS Текстовая версия Сейчас: 16.4.2024, 10:02
Дизайн