v2.5.2
Giriş yap

Bootstrap ve PHP Döngü

rennie
738 defa görüntülendi
<?php
<div class="carousel-item active">
      <img src="'.$dizin.$dosya.'" class="d-block w-100">
    </div>
?>

Bootstrap'ın carousel eklentisini kullanıp, klasördeki
resimleri döngüye sokup çektiriyorum. Ama ekranda bir tane resim
göstermesi gerekirken class ın içindeki "active" tüm resimlere geliyor. Bu yüzden
slider şeklinde gösteremiyorum, bu nasıl yapabilirim ?

örnek;

<html
  <div class="carousel-inner">
    <div class="carousel-item active">
      <img src="portfoy/06012021-183159/r_15.jpg" class="d-block w-100">
    </div>
  </div>
  
    <div class="carousel-inner">
    <div class="carousel-item active">
      <img src="portfoy/06012021-183159/r_17.jpg" class="d-block w-100">
    </div>
  </div>
  
    <div class="carousel-inner">
    <div class="carousel-item active">
      <img src="portfoy/06012021-183159/r_19.jpg" class="d-block w-100">
    </div>
  </div>
  
    <div class="carousel-inner">
    <div class="carousel-item active">
      <img src="portfoy/06012021-183159/r_21.jpg" class="d-block w-100">
    </div>
  </div>
>
Cevap yaz
Cevaplar (5)
ibrahimali
1445 gün önce

Şöyle dene

<?php

$dizin = "portfoy/".$kLasorAdi."/"; 
$satirLimit = 6;
function uzanti($file_name) {
  return end(explode('.',$file_name));
}

$dir = opendir($dizin);
$satir = 0;
// ilave
$carousel = 0;
$html = "";
while (($dosya = readdir($dir)) !== false){
if(! is_dir($dosya)){
if ((uzanti($dosya)=="jpg")||
(uzanti($dosya)=="JPG")||
(uzanti($dosya)=="jpeg")||
(uzanti($dosya)=="JPEG")||
(uzanti($dosya)=="gif")||
(uzanti($dosya)=="GIF")){
$satir++;
$html .= '
<div class="carousel-item '.($carousel==0?'active':'').'">
<img src="'.$dizin.$dosya.'" style="width: 100%; height: 547px;" class="d-block w-100">
</div>
';
$carousel++;
if ($satir==$satirLimit){
echo "<br />n";
}
}
}
}
closedir($dir); 
?>


Html de soyle


<div id="carouselExampleControls" class="carousel slide" data-ride="carousel">
<div class="carousel-inner">
    <?=$html?>
</div>
<a class="carousel-control-prev" href="#carouselExampleControls" role="button" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a class="carousel-control-next" href="#carouselExampleControls" role="button" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div>


rennie
1445 gün önce

Teşekkür ederim, çok sağol.

rennie
1445 gün önce
<?php

$dizin = "portfoy/".$kLasorAdi."/"; 
$satirLimit = 6;
function uzanti($file_name) {
  return end(explode('.',$file_name));
}

$dir = opendir($dizin);
$satir = 0;
while (($dosya = readdir($dir)) !== false){
if(! is_dir($dosya)){
if ((uzanti($dosya)=="jpg")||
(uzanti($dosya)=="JPG")||
(uzanti($dosya)=="jpeg")||
(uzanti($dosya)=="JPEG")||
(uzanti($dosya)=="gif")||
(uzanti($dosya)=="GIF")){
$satir++;
echo '
<div id="carouselExampleControls" class="carousel slide" data-ride="carousel">
<div class="carousel-inner">
<div class="carousel-item active">
<img src="'.$dizin.$dosya.'" style="width: 100%; height: 547px;" class="d-block w-100">
</div>
</div>
<a class="carousel-control-prev" href="#carouselExampleControls" role="button" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a class="carousel-control-next" href="#carouselExampleControls" role="button" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div>';
if ($satir==$satirLimit){
echo "<br />n";
}
}
}
}
closedir($dir); 
?>

Yaptığım sistem bu.

ibrahimali
1445 gün önce

Anladığım kadarıyla active classını sadece bir div-e vermeniz gerek. onun içinde şöyle basit bir şey yapa bilirsiniz döngünüzde.

<?php
//Örnek döngü
// döngü başlamamıştan
$i = 0;

// döngünün içinde
foreach ($data as $row) {
    echo '<div class="carousel-item '.($i==0?'active':'').'">
      <img src="'.$dizin.$dosya.'" class="d-block w-100">
    </div>';
    $i++;
}
?>
qplot
1445 gün önce

donguye soktuysan kontol edeceksın 1 olana class="carousel-item active" bunu atayacaksın dıgerlerıne class="carousel-inner" bunu
kodu paylasmadan ancak bu kadar olur