• 08-12-2022, 16:59:56
    #1
    hocamlar php de daha çok yeniyim bu kodda sadece tek 1 veriyi basıyor ekrana isim soy isim tekrar eden kişilerin hepsini yazdırmak istiyorum yardımcı olur musunuz


    if (isset($_POST['gonder'])){
    
                                $key = $_POST['key'];
                                if (empty($_POST['key'])){
                                    ?><center><div class="alert alert-danger" role="alert"><strong><i class="fas fa-ban"></i>  Boş Bırakma !</strong> </div></center>
                                    <?php
    
                                } else {
                                    include 'baglan/config.php';
    
                                    $query = $db->query("SELECT * FROM ogrkulup WHERE CONCAT(ADI,' ',SOYADI,' ',GELIL) = '{$key}'")->fetch(PDO::FETCH_ASSOC);
                                
    
    
                                    if ( $query){
                                        ?><div class="alert alert-success" role="alert"><strong><i class="fas fa-check"></i> Bilgi Bulundu !</strong> </div>
                                        <center><strong style="color:red">Detaylar</strong></center>
                                        <br>
                                        <center><strong>ADI :  <?php echo $query['ADI']; ?></strong> 
                                            <br>
                                            <strong>SOYADI : <?php echo $query['SOYADI']; ?></strong>
                                            
                                            <br></center>
                                            <?php
                                        } else {
                                            ?><div class="alert alert-danger" role="alert"><strong><i class="fas fa-ban"></i> Bilgi Bulunamadı !</strong> </div>
                                            <?php
                                        }
  • 08-12-2022, 17:06:19
    #2
    dostum sorguyu fetchAll olarak değiştir
    foreach($query as $key => $value) {
    // döngüye girilecek kısım
    // $query değil $value["ad soyad vs"];
    }
  • 08-12-2022, 17:08:47
    #3
    // Bu şekilde deneyebilirsiniz.
    <?php
    if (isset($_POST['gonder'])) {
        $key = $_POST['key'];
        if (empty($_POST['key'])) { ?>
            <center>
                <div class="alert alert-danger" role="alert"><strong><i class="fas fa-ban"></i> Boş Bırakma !</strong> </div>
            </center>
            <?php
        } else {
            include 'baglan/config.php';
            $queries = $db->query("SELECT * FROM ogrkulup WHERE CONCAT(ADI,' ',SOYADI,' ',GELIL) = '{$key}'")->fetchAll(PDO::FETCH_ASSOC);
            if ($queries) {
                foreach ($queries as $query) :
            ?><div class="alert alert-success" role="alert"><strong><i class="fas fa-check"></i> Bilgi Bulundu !</strong> </div>
                    <center><strong style="color:red">Detaylar</strong></center>
                    <br>
                    <center><strong>ADI : <?php echo $query['ADI']; ?></strong>
                        <br>
                        <strong>SOYADI : <?php echo $query['SOYADI']; ?></strong>
                        <br>
                    </center>
                <?php
                endforeach;
            } else {
                ?><div class="alert alert-danger" role="alert"><strong><i class="fas fa-ban"></i> Bilgi Bulunamadı !</strong> </div>
    <?php
            }
        }
    }
  • 08-12-2022, 17:14:58
    #4
         $query = $db->query("SELECT * FROM ogrkulup WHERE CONCAT(ADI,' ',SOYADI,' ',GELIL) = '{$key}'")->fetchAll();
                                 
     
     
                                    foreach($query as $key => $value) {
                                        ?><div class="alert alert-success" role="alert"><strong><i class="fas fa-check"></i> Bilgi Bulundu !</strong> </div>
                                        <center><strong style="color:red">Detaylar</strong></center>
                                        <br>
                                        <center><strong>ADI :  <?php echo $value["ADI"]; ?></strong> 
                                            <br>
                                            <strong>SOYADI : <?php echo $value["SOYADI"]; ?></strong>
                                             
                                            <br></center>
                                            <?php
                                        }
    böylemi hocam
    serkan_srm_ adlı üyeden alıntı: mesajı görüntüle
    dostum sorguyu fetchAll olarak değiştir
    foreach($query as $key => $value) {
    // döngüye girilecek kısım
    // $query değil $value["ad soyad vs"];
    }
  • 08-12-2022, 17:18:21
    #5
    Mhmmd adlı üyeden alıntı: mesajı görüntüle
    // Bu şekilde deneyebilirsiniz.
    <?php
    if (isset($_POST['gonder'])) {
        $key = $_POST['key'];
        if (empty($_POST['key'])) { ?>
            <center>
                <div class="alert alert-danger" role="alert"><strong><i class="fas fa-ban"></i> Boş Bırakma !</strong> </div>
            </center>
            <?php
        } else {
            include 'baglan/config.php';
            $queries = $db->query("SELECT * FROM ogrkulup WHERE CONCAT(ADI,' ',SOYADI,' ',GELIL) = '{$key}'")->fetchAll(PDO::FETCH_ASSOC);
            if ($queries) {
                foreach ($queries as $query) :
            ?><div class="alert alert-success" role="alert"><strong><i class="fas fa-check"></i> Bilgi Bulundu !</strong> </div>
                    <center><strong style="color:red">Detaylar</strong></center>
                    <br>
                    <center><strong>ADI : <?php echo $query['ADI']; ?></strong>
                        <br>
                        <strong>SOYADI : <?php echo $query['SOYADI']; ?></strong>
                        <br>
                    </center>
                <?php
                endforeach;
            } else {
                ?><div class="alert alert-danger" role="alert"><strong><i class="fas fa-ban"></i> Bilgi Bulunamadı !</strong> </div>
    <?php
            }
        }
    }
    bu koddada sadece 1 kişi getiriyor
  • 08-12-2022, 17:19:33
    #6
    Gönderdiğiniz key'e göre 1 kayıt olabilir mi?
  • 08-12-2022, 17:22:07
    #7
    Mhmmd adlı üyeden alıntı: mesajı görüntüle
    Gönderdiğiniz key'e göre 1 kayıt olabilir mi?
    öyleymiş hocam çok teşekkürler oldu
  • 09-12-2022, 00:27:03
    #8
    Mhmmd adlı üyeden alıntı: mesajı görüntüle
    Gönderdiğiniz key'e göre 1 kayıt olabilir mi?
    hocam concat yerine kullanabileceğim başka bi kod var mı veriyi arttırınca çok yavaşlatıyo concat gene isim ve soyisimleri çeksin ama daha hızlı çeksin istiyorum
  • 09-12-2022, 01:35:54
    #9
    KyreKiira adlı üyeden alıntı: mesajı görüntüle
         $query = $db->query("SELECT * FROM ogrkulup WHERE CONCAT(ADI,' ',SOYADI,' ',GELIL) = '{$key}'")->fetchAll(PDO::FETCH_ASSOC);
                                
     
     
                                    foreach($query as $key => $value) {
                                        ?><div class="alert alert-success" role="alert"><strong><i class="fas fa-check"></i> Bilgi Bulundu !</strong> </div>
                                        <center><strong style="color:red">Detaylar</strong></center>
                                        <br>
                                        <center><strong>ADI :  <?php echo $value["ADI"]; ?></strong>
                                            <br>
                                            <strong>SOYADI : <?php echo $value["SOYADI"]; ?></strong>
                                            
                                            <br></center>
                                            <?php
                                        }
    böylemi hocam
    Aynen eğerki sorgunda bir hata yoksa bu şekilde gösterir ve $query->rowCount(); ile kaç tane sorgunun eşleştiğini görebilirsin