Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

Php'de bir veritabanı işlemini hem if hemde foreach'de kullanmaya çalışınca olmuyor

Konu, 'PHP' kısmında egencan tarafından paylaşıldı.

  1. egencan

    egencan Üye

    Kayıt:
    25 Ocak 2017
    Mesajlar:
    85
    Beğenilen Mesajlar:
    0
    Meslek:
    ÖĞRENCİ
    Şehir:
    İstanbul
    Merhaba,

    arkadaşlar ben php'de bir veritabanı işlemi ile verileri çektim. Ama verileri kullanırken hem if de hemde foreach de kullanmam gerekiyor. Ama hangi işlem önce yapılıyorsa o oluyor. Diğer işlem gerçekleşmiyor.

    Kod :

    Kod:
    <?php
    
    $vericek8 = $baglanti3 -> prepare("select * from urunlistresim where urunad = ?");
    $vericek8 -> bindParam(1, $deneme);
    $vericek8 -> execute();
    $rssayi = $vericek8 -> rowCount();
    
    if ($resimno > 0 || $resimno < $rssayi) {
    
      $resimler = $vericek8 -> fetchAll();
    
      $resim = $resimler[$resimno - 1]['resimyol'];
    
      echo '<img class="resim" src="'.$resim.'">';
    
    }
    
    foreach ($vericek8 as $bilgiler8) {
    
      $_SESSION['resimyoly'] = $bilgiler8['resimyol'];
    
      ?>
    
      <div id="d" style="position: absolute;top: 275px;left: 550px;"><a href="<?php echo($_SESSION['resimyoly']); ?>"><img src="<?php echo($_SESSION['resimyoly']); ?>" height="50" width="50"></a></div>
      <?php
    
    }
    Bu sorunu nasıl çözebilirim?

    Lütfen yardım edin.

    Cevaplarınız için şimdiden çok teşekkür ederim.

    İyi günler ve iyi kurban bayramı dileğiyle.
     
  2. yunus

    yunus Daimi Üye

    Kayıt:
    26 Şubat 2015
    Mesajlar:
    521
    Beğenilen Mesajlar:
    126
    PHP:
    foreach ($vericek8 as $bilgiler8)
    Tanımladığınız $vericek8 değişkeni bir PDOStatement olduğundan direkt foreach içerisinde kullanmanız pek uygun değil.

    Veriyi bir kere fetchAll ile diziye aktarıp daha sonra gerektiği yerde kullabilirsiniz.


    PHP:
    $resimler $vericek8 -> fetchAll();

    if (
    $resimno || $resimno $rssayi) {

      
    $resim $resimler[$resimno 1]['resimyol'];

      echo 
    '<img class="resim" src="'.$resim.'">';

    }

    foreach (
    $resimler as $bilgiler8) {

      
    $_SESSION['resimyoly'] = $bilgiler8['resimyol'];

    ...

     
  3. egencan

    egencan Üye

    Kayıt:
    25 Ocak 2017
    Mesajlar:
    85
    Beğenilen Mesajlar:
    0
    Meslek:
    ÖĞRENCİ
    Şehir:
    İstanbul
    Merhaba,

    cevabınız için çok teşekkür ederim. Sayenizde sorun çözüldü.

    İyi günler dilerim.