¡Perfecto! Vamos a combinar tu código para mostrar las imágenes con el bloque de código que hemos mejorado previamente. La idea es que utilices la lógica de mostrar imágenes con el array que ya hemos creado para manejar múltiples fotos. El siguiente código hará esto:
### Código Combinado para Mostrar Imágenes
PHP:
if ($fila['category'] === 'share') {
echo '<span class="hare">';
$chopo = mysqli_query($conexion, "SELECT * FROM posters WHERE id='" . $fila['idshare'] . "' ORDER BY id DESC");
if ($clasy = mysqli_fetch_assoc($chopo)) {
$photos = [];
for ($i = 1; $i <= 20; $i++) {
if (!empty($clasy['photo' . $i])) { // Verificando si hay foto
$photos[] = $clasy['photo' . $i];
}
}
}
} else {
$photos = [];
for ($i = 1; $i <= 20; $i++) {
if (!empty($fila['photo' . $i])) { // Verificando si hay foto
$photos[] = $fila['photo' . $i];
}
}
}
// Función para mostrar media
if (!function_exists('getMediaHtml')) {
function getMediaHtml($src, $id, $photobooth) {
if (strpos($src, '.mp4') !== false) {
return '<span style="margin-left:10px;margin-bottom:10px;box-shadow:0px 0px 3px #000;background:#000;position:relative;width:calc(50% - 15px);height:200px;float:left;"><img loading="lazy" style="background:#000;border-radius:100%;padding:5px;box-shadow:0px 0px 3px #000;position:absolute;top:10px;left:10px;width:20px;height:20px;" class="cora" src="../wpp/img/btn9.png" /><img loading="lazy" src="'.str_replace('.mp4', '.webp', str_replace('upload/', 'imguser/', $src)).'" class="tenph02 cora" /></span>';
} else {
return '<img loading="lazy" src="'.$src.'" class="tenph01 cora" />';
}
}
}
// Mostrar las imágenes
$displayContainer = '<span style="float:left;width:100%;justify-content:center;display:flex;">';
foreach ($photos as $index => $photobary) {
if ($index == 0) {
// Primera imagen
$displayContainer .= getMediaHtml($photobary, $idshare, $index + 1);
} else {
// Subsecuentes imágenes
if (!empty($photobary)) {
$displayContainer .= getMediaHtml($photobary, $idshare, $index + 1);
}
}
}
$displayContainer .= '</span>';
echo $displayContainer;
### Explicación del Código Combinado:
1.
Recopilación de Imágenes: El código mantiene la lógica de recopilar hasta 20 imágenes, como en el código anterior.
2.
Función getMediaHtml: Se incluye dentro del mismo bloque. Esta función comprueba si la imagen es un video
.mp4 y devuelve el HTML apropiado.
3.
Mostrar Imágenes: Se utiliza un
foreach para recorrer el array de imágenes y generar el HTML. Las imágenes se agrupan en un contenedor
$displayContainer que se imprime al final.
4.
Manejo de Estilo: Se mantiene la estructura de estilo desde el original, asegurando que se mantenga la apariencia que deseas al mostrar las imágenes y vídeos.
### Notas Finales:
Con esta integración, podrás mostrar las imágenes y vídeos de forma eficiente y manejada. Asegúrate de probar el código y ajustar cualquier estilo o lógica adicional según tus necesidades. Si tienes más cosas que agregar o modificar, no dudes en preguntar.
comencemos de nuevo, simplifica este codigo
if($fila['category']==='share'){
echo '<span class="hare">';
$chopo = mysqli_query($conexion,"SELECT * FROM posters where id='".$fila['idshare']."' ORDER BY id DESC");
while($clasy = mysqli_fetch_assoc($chopo)){
$photobar=$clasy['photo'];
$photobar2=$clasy['photo2'];
$photobar3=$clasy['photo3'];
$photobar4=$clasy['photo4'];
$photobar5=$clasy['photo5'];
$photobar6=$clasy['photo6'];
$photobar7=$clasy['photo7'];
$photobar8=$clasy['photo8'];
$photobar9=$clasy['photo9'];
$photobar10=$clasy['photo10'];
$photobar11=$clasy['photo11'];
$photobar12=$clasy['photo12'];
$photobar13=$clasy['photo13'];
$photobar14=$clasy['photo14'];
$photobar15=$clasy['photo15'];
$photobar16=$clasy['photo16'];
$photobar17=$clasy['photo17'];
$photobar18=$clasy['photo18'];
$photobar19=$clasy['photo19'];
$photobar20=$clasy['photo20'];
$idshared=$clasy['id'];
}
$mory='true';
}
if($mory==='true'){
$idshare=$idshared;
$photobary=$photobar;
$photobary2=$photobar2;
$photobary3=$photobar3;
$photobary4=$photobar4;
$photobary5=$photobar5;
$photobary6=$photobar6;
$photobary7=$photobar7;
$photobary8=$photobar8;
$photobary9=$photobar9;
$photobary10=$photobar10;
$photobary11=$photobar11;
$photobary12=$photobar12;
$photobary13=$photobar13;
$photobary14=$photobar14;
$photobary15=$photobar15;
$photobary16=$photobar16;
$photobary17=$photobar17;
$photobary18=$photobar18;
$photobary19=$photobar19;
$photobary20=$photobar20;
}else{
$idshare=$fila['id'];
$photobary=$fila['photo'];
$photobary2=$fila['photo2'];
$photobary3=$fila['photo3'];
$photobary4=$fila['photo4'];
$photobary5=$fila['photo5'];
$photobary6=$fila['photo6'];
$photobary7=$fila['photo7'];
$photobary8=$fila['photo8'];
$photobary9=$fila['photo9'];
$photobary10=$fila['photo10'];
$photobary11=$fila['photo11'];
$photobary12=$fila['photo12'];
$photobary13=$fila['photo13'];
$photobary14=$fila['photo14'];
$photobary15=$fila['photo15'];
$photobary16=$fila['photo16'];
$photobary17=$fila['photo17'];
$photobary18=$fila['photo18'];
$photobary19=$fila['photo19'];
$photobary20=$fila['photo20'];
}
if(!empty($photobary)){
// Función para mostrar media
if (!function_exists('getMediaHtml')) {
function getMediaHtml($src, $id, $photobooth) {
if (strpos($src, '.mp4') !== false) {
return '<span style="margin-left:10px;margin-bottom:10px;box-shadow:0px 0px 3px #000;background:#000;position:relative;width:calc(50% - 15px);height:200px;float:left;"><img loading="lazy" style="background:#000;border-radius:100%;padding:5px;box-shadow:0px 0px 3px #000;position:absolute;top:10px;left:10px;width:20px;height:20px;" class="cora" src="../wpp/img/btn9.png" /><img loading="lazy" src="'.str_replace('.mp4', '.webp', str_replace('upload/', 'imguser/', $src)).'" class="tenph02 cora" /></span>';
}else{
return '<img loading="lazy" src="'.$src.'" class="tenph01 cora" />';
}
}
}
if (empty($photobary2) and empty($photobary3) and empty($photobary4) and empty($photobary5) and empty($photobary6) and empty($photobary7) and empty($photobary8) and empty($photobary9) and empty($photobary10) and empty($photobary11) and empty($photobary12) and empty($photobary13) and empty($photobary14) and empty($photobary15) and empty($photobary16) and empty($photobary17) and empty($photobary18) and empty($photobary19) and empty($photobary20)){
echo '<span style="float:left;width:100%;justify-content:center;display:flex;">'.getMediaHtml($photobary, $idshare, 1).'</span>';
}else{
echo getMediaHtml($photobary, $idshare, 1);
}
if (!empty($photobary2)) {
echo getMediaHtml($photobary2, $idshare, 2);
}
if (!empty($photobary3)) {
echo getMediaHtml($photobary3, $idshare, 3);
}
if (!empty($photobary4)) {
if (!empty($photobary5)) {
$querimads = mysqli_query($conexion, "SELECT *, (CASE WHEN photo5 != '' THEN 1 ELSE 0 END + CASE WHEN photo6 != '' THEN 1 ELSE 0 END + CASE WHEN photo7 != '' THEN 1 ELSE 0 END + CASE WHEN photo8 != '' THEN 1 ELSE 0 END + CASE WHEN photo9 != '' THEN 1 ELSE 0 END + CASE WHEN photo10 != '' THEN 1 ELSE 0 END + CASE WHEN photo11 != '' THEN 1 ELSE 0 END + CASE WHEN photo12 != '' THEN 1 ELSE 0 END + CASE WHEN photo13 != '' THEN 1 ELSE 0 END + CASE WHEN photo14 != '' THEN 1 ELSE 0 END + CASE WHEN photo15 != '' THEN 1 ELSE 0 END + CASE WHEN photo16 != '' THEN 1 ELSE 0 END + CASE WHEN photo17 != '' THEN 1 ELSE 0 END + CASE WHEN photo18 != '' THEN 1 ELSE 0 END + CASE WHEN photo19 != '' THEN 1 ELSE 0 END + CASE WHEN photo20 != '' THEN 1 ELSE 0 END) AS photo_count FROM posters WHERE id='" . $idshare . "' AND (photo5 != '' OR photo6 != '' OR photo7 != '' OR photo8 != '' OR photo9 != '' OR photo10 != '' OR photo11 != '' OR photo12 != '' OR photo13 != '' OR photo14 != '' OR photo15 != '' OR photo16 != '' OR photo17 != '' OR photo18 != '' OR photo19 != '' OR photo20 != '') ORDER BY id DESC");
$totalPhotos = 0;
while($row = mysqli_fetch_assoc($querimads)){
$totalPhotos += $row['photo_count'];
}
echo '<span style="margin-left:10px;width:calc(50% - 15px);height:200px;position:relative;float:left;background:red;">';
if($photobary4 == true and strpos($photobary4, '.mp4')){
echo '<span style="box-shadow:0px 0px 3px #000;background:#000;position:relative;width:100%;height:200px;float:left;"><img loading="lazy" style="background:#000;border-radius:100%;padding:5px;box-shadow:0px 0px 3px #000;position:absolute;top:10px;left:10px;width:20px;height:20px;" class="cora" src="../wpp/img/btn9.png" /><img loading="lazy" src="'.str_replace('.mp4', '.webp', str_replace('upload/', 'imguser/', $photobary4)).'" class="tenph02 cora" /></span>';
}else{
echo '<img loading="lazy" src="'.$photobary4.'" class="tenph01 cora" style="position:absolute;margin-left:0px;width:100%;height:100%;" />';
}
echo '<span style="z-index:1;position:absolute;top:0px;background:rgba(0,0,0,0.5);justify-content:center;align-items:center;display:flex;left:0px;width:100%;height:100%;color:gold;font:20px arial, tahoma;font-weight:bold;" class="pointboss">+'.$totalPhotos.'</span>
</span>';
}else{
echo getMediaHtml($photobary4, $fila['id'], 4);
}
}
}
if($fila['category']==='share'){
echo '</span>';
}