Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Вывод изображений в слайдер

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
elian
Отправлено: 28 Апреля, 2013 - 18:05:42
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2013  


Помог: 0 раз(а)

[+]


Добрый день. Не получается сделать так, что бы в каждом слайде выводилась по ИД картинка, например добавил картинку, ИД стало например 3 и она вывелась.
СЛайдер работает нормально, т.к. если делаю для каждой фото блок вывода то все норм, а мне надо что бы с бд выводило.
Вот кодНедовольство, огорчениеэто вставка пхп кода в хтмл коде, файл с пхп расширением, если что)
<div id="slider">
<?php
$i = $_GET['id'];
for($i=1;$i < 5; $i++){
echo "<div>
$path = 'img/';
$sql ='SELECT name FROM imgs WHERE id=$i';
$query = mysql_query($sql) or die(mysql_error());
while ($res = mysql_fetch_assoc($query)){
echo '<img src=\"" . $path . $res['name'] ."\">';}
</div>";
}
?>
Ещё раз повторяю, слайдер норм работает и отдельно от слайдер вывод фото с бд тоже норм работает, а если вместе то беда.
Я просто хочу сделать что б блок див повторялся сам циклом..
хелп плз, буду благодарен).
 
 Top
Dark-def
Отправлено: 28 Апреля, 2013 - 18:07:39
Post Id



Частый гость


Покинул форум
Сообщений всего: 169
Дата рег-ции: Дек. 2012  
Откуда: Украина, Запорожье


Помог: 1 раз(а)




а что выводит?


-----
while(true); - // И пусть весь мир подождет
 
 Top
elian
Отправлено: 28 Апреля, 2013 - 18:11:32
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2013  


Помог: 0 раз(а)

[+]


Оно даже ошибки режет пополам. Ничего разобрать нельзя.
Прикреплено изображение (Нажмите для увеличения)
error.png
 
 Top
Dark-def
Отправлено: 28 Апреля, 2013 - 18:14:33
Post Id



Частый гость


Покинул форум
Сообщений всего: 169
Дата рег-ции: Дек. 2012  
Откуда: Украина, Запорожье


Помог: 1 раз(а)




Ну так поиграйтесь с размерами вашего блока. И проверьте пути к изображениям


-----
while(true); - // И пусть весь мир подождет
 
 Top
Skycrafter
Отправлено: 28 Апреля, 2013 - 18:16:50
Post Id



Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Март 2013  


Помог: 2 раз(а)




если правильно понял то, что бы вывести из бд сразу после добавления по id то поможет функция
mysqli_insert_id
http://www.php.net/manual/ru/mys...li.insert-id.php


-----
Тысячемильный путь начинается с первого шага...
 
 Top
elian
Отправлено: 28 Апреля, 2013 - 18:18:14
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2013  


Помог: 0 раз(а)

[+]


Но когда делал отдельно вывод из бд, без слайдера все норм было с путем, странно, ничего же не менял
 
 Top
Skycrafter
Отправлено: 28 Апреля, 2013 - 19:35:48
Post Id



Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Март 2013  


Помог: 2 раз(а)




допустим у тебя поле id в базе автоинкремент,
в этой строке ты присваиваешь переменной $i значение которое будет соответствовать номеру id картинки в базе данных по которому вы будете вытаскивать эту самую картинку.
а в этой строке вы переписываете переменную $i задавая ей значения 1,2,3,4.

возможно запрос не срабатывает по тому что в таблице нет картинок с такими id/


-----
Тысячемильный путь начинается с первого шага...
 
 Top
elian
Отправлено: 28 Апреля, 2013 - 20:45:46
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2013  


Помог: 0 раз(а)

[+]


там 2 изображения, в первого ид = 1, во второго ид =2. Может я что то не так понимаю в коде, посоветуйте тогда как правильно.
 
 Top
Object
Отправлено: 28 Апреля, 2013 - 22:39:39
Post Id


Гость


Покинул форум
Сообщений всего: 67
Дата рег-ции: Авг. 2010  


Помог: 3 раз(а)




Вам нужно выводить имена файлов изображений из таблицы и если например там их 5 и в таблицу добавили 6-ю, то вывести в слайдер все 6 или все-таки только последнюю? А то Ваше сообщение и код какие-то противоречивые. Если нужны все изображения зачем передавать id одной картинки? Чего Вы прицепились к этому id? Зачем лупить в цикле 5 раз select? Можно выбрать все одним запросом, а потом в цикле выводить картинки в блоки. Ну и последнее, обычно слайдер делают через списки <ul> задавая стили.

PHP:
скопировать код в буфер обмена
  1. <div id="slider">
  2. <ul>
  3.     <?PHP
  4.         $path = 'img/';
  5.         $sql ='SELECT name FROM imgs';
  6.         $query = mysql_query($sql) or die(mysql_error());
  7.         while ($res = mysql_fetch_assoc($query)){
  8.         echo "<li><img src='{$path}{$res['name']}'></li>";
  9.         } ?>
  10. </ul>
  11. </div>


Как-то так.
 
 Top
elian
Отправлено: 29 Апреля, 2013 - 09:28:38
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2013  


Помог: 0 раз(а)

[+]


так то слайдер на работает, но изображения выводит.
(Добавление)
Все работает) спасибо большое).Но ещё одно, у меня щас только 2 изображения, а оно выводит весь слайдер этих 2 изображений, как сделать что б только 2 изображения были в слайдере?т.е. не повторялись, или слайдер это как замкнутое коло?
 
 Top
Object
Отправлено: 29 Апреля, 2013 - 12:12:06
Post Id


Гость


Покинул форум
Сообщений всего: 67
Дата рег-ции: Авг. 2010  


Помог: 3 раз(а)




У Вас формулировка вопросов это ... ужас.

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

CODE (SQL):
скопировать код в буфер обмена
  1. SELECT `name` FROM `imgs`
  2. ORDER BY `id` DESC
  3. LIMIT 0, 5;


Будет выводить только 5 картинок, включая последнюю добавленную, только из-за сортировки первой картинкой в слайдере будет последняя добавленная в базу, второй предпоследняя и т.д., но пересортировать можно уже в php. Это как-бы простой вариант, а можно считать количество записей в таблице с изображениями, считать сдвиг и выводить последние 5, тогда не нужно пересортировывать в пыхе.

P.S. Вообще-то php скрипт должен выводить все изображения, только не все отображать, а вот "крутить" карусель (слайдер) нужно уже с помощью javascript. ну это при нормальной реализации.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB