У меня проблема с Vegas.js
, Я пытаюсь поместить изображения из базы данных, но они обычно не отображаются. Иногда только первое изображение отображается один раз. Однако, если изображения, которые я получаю из базы данных, помещаются в <img>
тег, они отображаются правильно, я также прикрепил экранный колпачок, когда я делаю console.log моих данных JSON. Вот мой код:
//JS
$.getJSON('ajax/Slides.php', function(slide) {
$.each(slide, function(i,slides) {
$('#slideMain').vegas (
{ slides: [{src: slides["path"]}] }
);
})
});
//However, if I do something like this, it shows me all the images:
$('#slideMain').append('<img src="'+slide+'">');
// PHP
#I have 3 columns in the DB(id,path,order),
#but i only need the path
#conexion to the database
public function showSlideModel($table)
{
$stmt = conexion::connect()->prepare("SELECT path FROM $table ORDER BY order ASC");
$stmt -> execute();
return $stmt -> fetchAll();
$stmt -> close();
}
#this is the controller
public function SlideController()
{
$answer = SlideModel::showSlideModel("slides");
foreach($answer as $row => $item)
{
$slides[] = array('path'=>substr($item["path"], 6));
}
$jsonSlide = json_encode($slides);
echo $jsonSlide;
}
// Ajax
$slide = new Slider();
$slide ->SlideController();
echo $slide;
Задача ещё не решена.
Других решений пока нет …