Merhabalar. Aşağıdaki kodu buldum. Sayfalar arası geçişte sayfayı kaydırmıyor. "style.css" nin en başına koydum. Problemim çözüldü. Cevap için teşekkür ederim.
html {
margin-left: calc(100vw - 100%);
margin-right: 0;
}
Teşekkür ederim.
O halde "null" değerini footer'a yakın bir yerde "header" kısmının en alt kısımlarında falan vermek gerekli. Bir vidyoda gördüm veritabanı bağlantısının oluşturulduğu sayfada veriyordu "null" değerini. Başka bir vidyoda da "footer" a yakın bir yerde veriyordu. "null" verdiğimizde veritabanı bağlantısı oluşuyor ve hemen kapatılıyor. Bu durumda da sayfalar veritabanına bağlanamayınca da hata veriyor. "header" kısmının en altlarına yani bütün sorgular bittikten sonra koymak gerekli yani. Performans konusunda neredeyse hiç bilgim yok ama öğrenmek istediğim bir diğer konuda bu aslında. Tamam teşekkür ederim. :)
Arkadaşlar merhaba. Konunun sonuna geldim ve son bir şey kaldı. Şu an ki sorunumu anlamak için en üstten okumanıza gerek yok. Buradan itibaren okuyabilirsiniz. Şu probleme tekrar bir bakabilir misiniz? Şimdi yanyana listeleme işini farklı bir şekilde yapmaya karar verdim ve o konuda bir problem kalmadı. Problem şu: Albümleri 1. resimdeki gibi listeletiyorum. Albüm adına tıklayınca o albüme ait resimler çıkıyor başka bir sayfada. 2. resme bakabilirsiniz. Ama aynı zamanda da sayfalama yaptırmak istiyorum. Onu da yaptım. Aynı anda hem sayfalamayı hem de id ye göre resim listeletmeyi beceremedim. 1. resim albüm listeletme, 2. resim sayfalama, 3. resim ise albüme göre filtreleme.
Sayfalama yaptığım kodlar aşağıda
<?php
$sayfa = @intval($_GET['sayfa']); if(!$sayfa) $sayfa = 1;
$resimsorgusu = $db->query("SELECT * FROM albumeresimekle ORDER BY albumeresimekle_id DESC");
$ToplamVeri = $resimsorgusu->rowCount();
$Limit = 5;
$Sayfa_Sayisi = ceil($ToplamVeri/$Limit); if($sayfa > $Sayfa_Sayisi){$sayfa = 1;}
$Goster = $sayfa * $Limit - $Limit;
$GorunenSayfa = 2;
$resimsorgusu=$db->prepare("SELECT * FROM albumeresimekle order by albumeresimekle_id DESC limit $Goster,$Limit");
$resimsorgusu->execute(array());
$resimsorgu=$resimsorgusu->fetchAll(PDO::FETCH_ASSOC);
foreach($resimsorgu as $resim) {
?>
<div class="cokluresimlistelealani">
<div class="cokluresimlisteleresim"><img src="../../../upload/albumeresimekle/<?php echo $resim["albumeresimekle_adi"]; ?>">
<div class="cokluresimlisteleresimyazisi">
<a href="../../../resim-galerisi.php<?php echo $resim['albumeresimekle_baslik']; ?>"><?php echo $resim['albumeresimekle_baslik']; ?></a>
<div class="silduzenlediv"><a href="duzenle.php?duzenle=<?php echo $resim['albumeresimekle_id']; ?>"><div class="duzenle">Düzenle</div></a><a href=""><div class="sil">Sil</div></a></div>
</div>
</div>
</div>
<?php } ?>
<div style="clear: both;">
<?php if ($sayfa > 1) { ?>
<div style="float: left; padding-left: 10px; margin-top: 10px; margin-bottom: 37px;">
<a href="resimlistele.php?sayfa=1">İlk</a></div>
<div style="float: left; padding-left: 10px; margin-top: 10px; margin-bottom: 37px;">
<a href="resimlistele.php?sayfa=<?php echo $sayfa - 1 ?>">Önceki</a></div>
<?php } ?>
<?php
for($i = $sayfa - $GorunenSayfa; $i < $sayfa + $GorunenSayfa +1; $i++) {
if($i > 0 and $i <= $Sayfa_Sayisi) {
if($i == $sayfa) {
?>
<div style="float: left; padding-left: 10px; margin-top: 10px; margin-bottom: 37px;">
<?php echo '<span>'.$i.'</span>'; ?>
</div>
<?php } else { ?>
<div style="float: left; padding-left: 10px; margin-top: 10px; margin-bottom: 37px;">
<?php echo '<a href="resimlistele.php?sayfa='.$i.'">'.$i.'</a>'; ?>
</div>
<?php } } } if ($sayfa != $Sayfa_Sayisi) { ?>
<div style="float: left; padding-left: 10px; margin-top: 10px; margin-bottom: 37px;"><a href="resimlistele.php?sayfa=<?php echo $sayfa + 1 ?>">Sonraki</a></div>
<div style="float: left; padding-left: 10px; margin-top: 10px; margin-bottom: 37px;"><a href="resimlistele.php?sayfa=<?php echo $Sayfa_Sayisi ?>">Son</a></div>
<?php } ?>
</div>
Filtreleme yaptığım kodlar aşağıda
<?php
ob_start();
include "../../../baglanti.php";
?>
<head>
<link rel="stylesheet" href="../../../css/stil.css">
</head>
<?php
$resimsorgusu = $db->query("SELECT * FROM resimalbumu WHERE resimalbumu_id");
$resimsorgu = $resimsorgusu->fetchAll(PDO::FETCH_ASSOC);
$resimlerilistele = $_GET['resimlerilistele'];
$resimsorgusu = $db->query("SELECT * FROM albumeresimekle WHERE albumeresimekle_sirasi='$resimlerilistele'");
$resimsorgu = $resimsorgusu->fetchAll(PDO::FETCH_ASSOC);
foreach($resimsorgu as $resim) {
?>
<div class="cokluresimlistelealani">
<!-- Resimleri ve başlıklarını komple birbiri ardına sola alıyor. Başlangıç -->
<div class="cokluresimlisteleresim"><img src="../../../upload/albumeresimekle/<?php echo $resim["albumeresimekle_adi"]; ?>">
<div class="cokluresimlisteleresimyazisi">
<a href="../../../resim-galerisi.php<?php echo $resim['albumeresimekle_baslik']; ?>"><?php echo $resim['albumeresimekle_baslik']; ?></a>
<div class="silduzenlediv"><a href="duzenle.php?duzenle=<?php echo $resim['albumeresimekle_id']; ?>"><div class="duzenle">Düzenle</div></a><a href=""><div class="sil">Sil</div></a></div>
</div>
</div>
</div>
<?php } ?>
İkisini birleştiremedim. yardım edebilirseniz sevinirim.
https://hizliresim.com/9S9Ibi
https://hizliresim.com/OZ6WmP
https://hizliresim.com/DM9dwE
Çok ufak bir problem kaldı. Onu da halledebilirseniz sevinirim. 1. resimdeki gibi listelettim. Başlıkların yanında "devam" linki var. O linke tıklayınca aşağıdaki kodlara gidiyor. Sorun 2. resimde.
<?php
ob_start();
include "../../../baglanti.php";
?>
<head>
<link rel="stylesheet" href="../../../css/stil.css">
</head>
<?php
$resmegit = $_GET['resmegit'];
$resimlistsorgusu = $db->query("SELECT * FROM albumeresimekle WHERE albumeresimekle_sirasi='$resmegit'");
$resimlistsorgu = $resimlistsorgusu->fetchAll(PDO::FETCH_ASSOC);
foreach($resimlistsorgu as $resimlist) {
?>
<div style="width:99.3%; height:50px; background:#81a8f4; padding-left:10px; font-size:20px;
color:#fff;"><?php echo $resimlist['albumeresimekle_baslik']; ?></div>
<br>
<div class="cokluresimlisteleresim" style="color:#fff;">
<img src="../../../upload/albumeresimekle/<?php echo $resimlist['albumeresimekle_adi']; ?>"></div>
<?php } ?>
https://resimyukle.org/i/6yRe4
https://resimyukle.org/i/6yF70
Tekrar merhaba arkadaşlar. Sizin düzenlemiş olduğunuz sorguyu ben tam anlayamadığımdan, sizin öneriniz ile sorguyu aşağıdaki gibi düzenledim. Şimdi albümlerin içindeki resimler yan yana çıkıyor. Ama kodları değiştirdiğimden sayfalamayı çalıştıramadım. En yukarıda sayfalama kodlarının başlangıcı var zaten. (----) bu çizgilerden sonra da sayfalamanın devamı var. Eğer karmaşık oldu derseniz daha sade bir şekilde yazmaya çalışayım. Şu anda sayfanın son hali resimdeki gibi.
https://hizliresim.com/7bxXPz
<?php
$sayfa = @intval($_GET["sayfa"]); if(!$sayfa) {$sayfa = 1;}
$say = $db->query("SELECT * FROM albumeresimekle");
$toplamveri = $say->rowCount(); // Verileri Saydırdık
$limit = 3; // Sayfada Gösterilecek Resim Sayısı
$sayfa_sayisi = ceil($toplamveri/$limit); if($sayfa > $sayfa_sayisi) { $sayfa = 1; }
$goster = $sayfa * $limit - $limit;
$gorunensayfa = 2;
$say = $db->query("SELECT * FROM resimalbumu");
$resimlerial = $say->fetchAll(PDO::FETCH_ASSOC);
foreach($resimlerial as $res) {
?>
<div class="cokluresimlistelealani" style="width:1512px; float:left; top:0px; height:255px;
line-height:50px; -webkit-box-shadow:1px 1px 2px rgba(0, 0, 0, 0.35);
-moz-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.35); box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.35);">
<div class="cokluresimlistelealanibaslik" style="margin-top:0px; width:1502px; height:50px; background:#81a8f4; padding-left:10px; font-size:20px;
color:#fff;"><?php echo $res['resimalbumu_adi']; ?></div>
<?php
$sorgu = $db->query("SELECT * FROM albumeresimekle");
$sorgual = $sorgu->fetchAll(PDO::FETCH_ASSOC);
foreach($sorgual as $sorgugoster) {
if($sorgugoster['albumeresimekle_sirasi']===$res['resimalbumu_id']) {
$sayi=$sorgu->rowCount();
if($sayi>1) {
?>
<div style="" class="cokluresimlisteleresim">
<img style="margin-top:1px;" src="../../../upload/albumeresimekle/<?php echo $sorgugoster["albumeresimekle_adi"]; ?>">
</div>
<?php } else { ?>
</div>
<?php } } } } ?>
---------------------------------------
<div style="clear: both;"> <!-- Sayfalama numaralarını resimlerin aşağısında tutabilmek için gerekli. Aksi takdirde resimlerin yanına geçiyor. Başlangıç -->
<?php if ($sayfa > 1) { ?>
<!-- Aşağıdaki "div" sayfalama numaralarını birbirinin soluna almak için "float:left" ekledim. Numaraların birbirinden 10px sağa kayması için "padding" verdim. Resimlerin 10px aşağısında olması için. -->
<div style="float: left; padding-left: 10px; margin-top: 10px; margin-bottom: 37px;">
<a href="tumresimlerilistele.php?sayfa=1">İlk</a></div>
<!-- Aşağıdaki "div" sayfalama numaralarını birbirinin soluna almak için "float:left" ekledim. Numaraların birbirinden 10px sağa kayması için "padding" verdim. Resimlerin 10px aşağısında olması için. -->
<div style="float: left; padding-left: 10px; margin-top: 10px; margin-bottom: 37px;">
<a href="tumresimlerilistele.php?sayfa=<?php echo $sayfa - 1 ?>">Önceki</a></div>
<?php } ?>
<?php
for($i = $sayfa - $gorunensayfa; $i < $sayfa + $gorunensayfa +1; $i++) {
if($i > 0 and $i <= $sayfa_sayisi) {
if($i == $sayfa) {
?>
<div style="float: left; padding-left: 10px; margin-top: 10px; margin-bottom: 37px;"> <!-- Sayfalama numaralarını birbirinin soluna almak için "float:left" ekledim. Resimlerin 10px aşağısında olması için. Başlangıç -->
<?php echo '<span>'.$i.'</span>'; ?>
</div> <!-- Sayfalama numaralarını birbirinin soluna almak için "float:left" ekledim. Resimlerin 10px aşağısında olması için. Bitiş -->
<?php } else { ?>
<div style="float: left; padding-left: 10px; margin-top: 10px; margin-bottom: 37px;"> <!-- Sayfalama numaralarını birbirinin soluna almak için "float:left" ekledim. Resimlerin 10px aşağısında olması için. Başlangıç -->
<?php echo '<a href="tumresimlerilistele.php?sayfa='.$i.'">'.$i.'</a>'; ?>
</div> <!-- Sayfalama numaralarını birbirinin soluna almak için "float:left" ekledim. Resimlerin 10px aşağısında olması için. Bitiş -->
<?php } } } if ($sayfa != $sayfa_sayisi) { ?>
<!-- Aşağıdaki "div" sayfalama numaralarını birbirinin soluna almak için "float:left" ekledim. Numaraların birbirinden 10px sağa kayması için "padding-left" verdim. Resimlerin 10px aşağısında olması için. -->
<div style="float: left; padding-left: 10px; margin-top: 10px; margin-bottom: 37px;"><a href="tumresimlerilistele.php?sayfa=<?php echo $sayfa + 1 ?>">Sonraki</a></div>
<!-- Aşağıdaki "div" sayfalama numaralarını birbirinin soluna almak için "float:left" ekledim. Numaraların birbirinden 10px sağa kayması için "padding-left" verdim. Resimlerin 10px aşağısında olması için. -->
<div style="float: left; padding-left: 10px; margin-top: 10px; margin-bottom: 37px;"><a href="tumresimlerilistele.php?sayfa=<?php echo $sayfa_sayisi ?>">Son</a></div>
<?php } ?>
</div> <!-- Sayfalama numaralarını resimlerin aşağısında tutabilmek için gerekli. Aksi takdirde numaralar resimlerin yanına geçiyor. Bitiş -->
<br>
".cokluresimlisteleresim img:first-child(1)" yaptığımda resimler 3px sağa kayıyor. En baştaki resmi "0px!important" yapıyorum. İşe yaramıyor. ".cokluresimlisteleresim img:first-child" yapmadığımda ise yani "(1)" koymadığımda da 3px sağa gitmiyor. Yani tam tersi. "head" etiketleri arasında da işe yaramıyor. Asında div etiketi içine "img:nth-child" yazabilsem belki işe yarar. Yazılır mı yazılmaz mı bilmiyorum.
Kodlar işlemedi. Çalışmadı.
Sorunumu çözemedim halâ. :) Cevap veren var mı acaba?
Tekrar merhaba. Şimdi ben "masa" kelimesi 1'den fazla varsa dediğimde "isim=$degisken" vb bir şey yazmak lazım. O kısma ne yazmalı. O kısmı nasıl çekeceğiz.
Ya da şöyle anlatayım. Üç adet resim var. Resimler kayıt olurken birine verdiğim numara "2" diğerine de aynı şekilde "2" numarasını verdim. Üçüncünün numarası "4". Şimdi bu resimleri listelerken "2" numaralı olanlar yanyana eğer ki numara farklı ise bir aşağıda listelenmeli.