Quiero hacer una presentación de diapositivas de datos de la base de datos. Uso php para imprimir las filas, luego lo coloqué en un código html, luego quiero usar javascript para hacer un bucle del código usando el bucle setInterval() .
Mi pregunta es: ¿cómo puedo generar las filas y usar javascript para mostrar eso? porque lo que traté de hacer no funcionó. No tengo experiencia con javascript, e intenté buscar y probar diferentes métodos, pero no funciona por alguna razón.
Esto es lo que intenté hacer por última vez, pero no imprime nada en la página.
... $sel_query = "SELECT * FROM `classifieds` WHERE `title` !=''"; $results = mysqli_set_charset($conn,"utf8"); $results = mysqli_query($conn,$sel_query); while ($row = mysqli_fetch_array($results)) { ?> ... <body> <div id="div"> </div> <script type="text/javascript"> setInterval(displayCode, 1000); var codeBlock = '<div id="slider-frame" class="slider-frame">' + '<div class="slide-images">' + '<div class="img-container">' + '<h1>' + '<?php echo $row['title']; ?>' + '</h1>' + '</div>' + '<p>' + '<?php echo $row['description']; ?>' + '</p>' + '</div> </div>'; function displayCode() { document.getElementById("div").innerHTML += codeBlock; } </script> <?php } ?> </body> </html>Mi problema fue que en mi código javascript no funcionó. No se hizo eco de la fila que quería. Supuse que esto sucedía debido al + en el bloque de código var. Después de eliminarlos y hacer que la var sea una cadena, funcionó.
<script type="text/javascript"> setInterval(displayCode, 1000); function displayCode() { document.getElementById("sliderFrame").innerHTML += '<div id="sliderFrame" class="slider-frame"> <div class="slide-images"> <div class="img-container"> <h1> <?php echo $row['title']; ?> </h1> </div> <p> <?php echo $row['description']; ?> </p> </div> </div> '; } </script>