Cita:
Iniciado por Triby
Si la cantidad de frases es igual a la de imágenes, entonces al finalizar el ciclo (donde incrementas el contador) solo asigna nuevamente $row_Recordset2, tal vez sería algo como:
$row_Recordset2 = mysql_fetch_assoc($Recordset2);
Por cierto, aparte de que la librería mysql ya es obsoleta y deberías usar mysqli o PDO, creo que hay muchas cosas por mejorar en tu código, por ejemplo:
1- No es necesario recorrer los registros de la primera consulta para armar los enlaces y luego rebobinar el apuntador con mysql_data_seek, en su lugar, puedes usar:
Código PHP:
Ver originalfor($contador = 1; $contador <= mysql_num_rows($Recordset1); $contador ++) { // Aquí los <li> con sus respectivos enlaces
}
2- En lugar de leer la consulta con mysql_fetch_assoc() y después tener un bucle do {} while(condición); podrías hacerlo directamente con while(condición) {}
Código PHP:
Ver original$contador = 1;
// Aquí muestras la imagen
// Aquí lees la frase con mysql_fetch_assoc() y la muestras
$contador ++;
}
3- O mejor aún, si requieres el contador, puedes hacer el for igual al anterior
Código PHP:
Ver originalfor($contador = 1; $contador <= mysql_num_rows($Recordset1); $contador ++) { // Aquí muestras la imagen
// Aquí lees la frase con mysql_fetch_assoc() y la muestras
}
Gracias por la respuesta. Aún no se ha solucionado. He arreglado el código como me dijiste y me hace la misma acción, hace el slide con las imágenes bien pero siempre aparece la primera frase. Cuando le coloco un do-while a la parte donde se muestran las frases no funciona, asi es como tengo el código ahora:
Código HTML:
<div id="featured" >
<ul class="ui-tabs-nav">
<?php for($contador = 1; $contador <= mysql_num_rows($Recordset1); $contador ++) { ?>
<li class="ui-tabs-nav-item ui-tabs-selected" id="nav-fragment-<?php echo $contador; ?>">
<a href="#fragment-<?php echo $contador; ?>">
</a>
</li>
<?php } ?>
</ul>
<!-- First Content -->
<?php $contador=1;
while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)) { ?>
<div id="fragment-<?php echo $contador; ?>" class="ui-tabs-panel" style="">
<img src="../includes/slider/<?php echo $row_Recordset1['strImagen']; ?>" alt="" width="330px" height="330px" />
<div class="info" >
<p style="color:#600" align="center">
<?php echo $row_Recordset2['strFrase']; ?>
</p>
<p style="color:#600; margin-top:-15px" align="right" >
<strong><em>- <?php echo $row_Recordset2['strAutor']; ?> -</em></strong>
</p>
</div>
</div>
<?php
$contador++;
} ?>
</div>
¿Dónde he de colocarlo?
Gracias una vez más.